.elementor-9 .elementor-element.elementor-element-f9548f1 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family );font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-9 .elementor-element.elementor-element-9236c2c{--update-cart-automatically-display:none;--sections-background-color:var( --e-global-color-6fb85fb );--sections-border-type:solid;--sections-border-color:var( --e-global-color-secondary );--sections-border-radius:0px 0px 0px 0px;--sections-padding:24px 24px 24px 24px;--sections-title-color:var( --e-global-color-text );--links-normal-color:var( --e-global-color-accent );--links-hover-color:var( --e-global-color-f8b7325 );--forms-fields-normal-color:var( --e-global-color-6fb85fb );--forms-fields-border-radius:0px 0px 0px 0px;--forms-buttons-normal-text-color:var( --e-global-color-primary );--forms-buttons-hover-text-color:var( --e-global-color-primary );--forms-buttons-border-type:solid;--forms-buttons-border-color:var( --e-global-color-primary );--forms-buttons-border-radius:0px 0px 0px 0px;--order-summary-rows-gap-top:calc( 0px/2 );--order-summary-rows-gap-bottom:calc( 0px/2 );--order-summary-color:var( --e-global-color-text );--order-summary-variations-color:var( --e-global-color-text );--order-summary-items-divider-color:var( --e-global-color-secondary );--order-summary-items-divider-weight:1px;--order-summary-quantity-border-color:var( --e-global-color-secondary );--order-summary-quantity-border-weight:1px;--order-summary-remove-icon-normal-color:var( --e-global-color-primary );--order-summary-remove-icon-hover-color:var( --e-global-color-46f9017 );--totals-color:var( --e-global-color-text );--totals-divider-color:var( --e-global-color-secondary );--totals-divider-weight:1px;--checkout-button-normal-text-color:var( --e-global-color-6fb85fb );--checkout-button-hover-text-color:var( --e-global-color-6fb85fb );}.elementor-9 .elementor-element.elementor-element-9236c2c .shop_table .button{background-color:var( --e-global-color-6fb85fb );font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );border-width:1px 1px 1px 1px;}.elementor-9 .elementor-element.elementor-element-9236c2c .shop_table .button:hover, .elementor-9 .elementor-element.elementor-element-9236c2c .shop_table .button:disabled[disabled]:hover{background-color:var( --e-global-color-7ee184d );}.elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-primary );}.elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce .wc-proceed-to-checkout .checkout-button:hover{background-color:var( --e-global-color-46f9017 );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-cart-section{border-width:1px 1px 1px 1px;}.elementor-9 .elementor-element.elementor-element-9236c2c .cart_totals h2{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c {--sections-descriptions-color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-cart-content, .elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce-shipping-destination, .elementor-9 .elementor-element.elementor-element-9236c2c .shipping-calculator-button{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .coupon .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c .cart-collaterals .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c select, .elementor-9 .elementor-element.elementor-element-9236c2c .select2-selection--single{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );}.e-woo-select2-wrapper .select2-results__option{color:var( --e-global-color-6fb85fb );}.elementor-9 .elementor-element.elementor-element-9236c2c .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var( --e-global-color-6fb85fb );}.elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce-cart-form{--order-summary-title-color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart th, .elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart td:before{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .cart td span, .elementor-9 .elementor-element.elementor-element-9236c2c .cart td, .elementor-9 .elementor-element.elementor-element-9236c2c .input-text.qty{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .product-name .variation{font-family:var( --e-global-typography-7806014-font-family );font-size:var( --e-global-typography-7806014-font-size );font-weight:var( --e-global-typography-7806014-font-weight );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}@media(max-width:1024px){.elementor-9 .elementor-element.elementor-element-f9548f1 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .cart_totals h2{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-cart-content, .elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce-shipping-destination, .elementor-9 .elementor-element.elementor-element-9236c2c .shipping-calculator-button{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .coupon .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c .cart-collaterals .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c select, .elementor-9 .elementor-element.elementor-element-9236c2c .select2-selection--single{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .shop_table .button{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart th, .elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart td:before{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .cart td span, .elementor-9 .elementor-element.elementor-element-9236c2c .cart td, .elementor-9 .elementor-element.elementor-element-9236c2c .input-text.qty{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .product-name .variation{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}}@media(max-width:767px){.elementor-9 .elementor-element.elementor-element-f9548f1 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .cart_totals h2{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-cart-content, .elementor-9 .elementor-element.elementor-element-9236c2c .woocommerce-shipping-destination, .elementor-9 .elementor-element.elementor-element-9236c2c .shipping-calculator-button{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .coupon .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c .cart-collaterals .input-text, .elementor-9 .elementor-element.elementor-element-9236c2c select, .elementor-9 .elementor-element.elementor-element-9236c2c .select2-selection--single{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .shop_table .button{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart th, .elementor-9 .elementor-element.elementor-element-9236c2c .e-shop-table .cart td:before{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .cart td span, .elementor-9 .elementor-element.elementor-element-9236c2c .cart td, .elementor-9 .elementor-element.elementor-element-9236c2c .input-text.qty{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}.elementor-9 .elementor-element.elementor-element-9236c2c .product-name .variation{font-size:var( --e-global-typography-7806014-font-size );line-height:var( --e-global-typography-7806014-line-height );letter-spacing:var( --e-global-typography-7806014-letter-spacing );word-spacing:var( --e-global-typography-7806014-word-spacing );}}/* Start custom CSS *//* =========================================================
   PANIER — JOËLLE SWANET
   ========================================================= */


/* =========================================================
   1. RÉPARTITION GÉNÉRALE
   ========================================================= */

/* Panier plus large / récapitulatif plus étroit */
.elementor-widget-woocommerce-cart .e-cart__container {
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr) !important;
}


/* =========================================================
   2. MESSAGE APRÈS AJOUT AU PANIER
   ========================================================= */

.woocommerce-cart .woocommerce-message {
    background: #F7F2EC;
    color: #26353A;
    border-top-color: #8D4B42;
}

.woocommerce-cart .woocommerce-message::before {
    color: #8D4B42;
}


/* =========================================================
   3. SÉLECTEURS DE SESSION
   ========================================================= */

/* "Session :" et le sélecteur sur la même ligne */
.woocommerce-cart .js-session-cart-field {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center !important;
    gap: 10px !important;

    margin-top: 6px;
}

.woocommerce-cart .js-session-cart-field label {
    margin: 0 !important;

    white-space: nowrap;

    color: #26353A;
    font-weight: 600;
}

/* Sélecteur compact */
.woocommerce-cart .js-session-cart-select {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: 38px !important;
    min-height: 38px !important;

    padding: 4px 10px !important;

    color: #26353A !important;
    -webkit-text-fill-color: #26353A !important;

    background: #FFFFFF !important;

    border: 1px solid #D8CCC2 !important;
    border-radius: 0 !important;

    opacity: 1 !important;
}

/* Message éventuel du mini-plugin */
.woocommerce-cart .js-session-cart-status {
    grid-column: 2;
}


/* =========================================================
   4. MINIATURES
   ========================================================= */

/* Pas de miniatures dans le panier */
.woocommerce-cart-form .product-thumbnail {
    display: none !important;
}


/* =========================================================
   5. TABLEAU DU PANIER
   ========================================================= */

.woocommerce-cart-form table.shop_table {
    table-layout: fixed;
}


/* =========================================================
   6. EN-TÊTES DE COLONNES
   ========================================================= */

.woocommerce-cart-form table.shop_table thead th {
    background: #F7F2EC !important;

    color: #26353A !important;
    font-weight: 700 !important;

    padding-top: 14px !important;
    padding-bottom: 14px !important;

    vertical-align: middle !important;

    white-space: nowrap !important;
    line-height: 1.2;

    border-top: 1px solid #D8CCC2 !important;
    border-bottom: 1px solid #D8CCC2 !important;
}

/* Bordure autour du bandeau Kaolin */
.woocommerce-cart-form table.shop_table thead th:first-child {
    border-left: 1px solid #D8CCC2 !important;
}

.woocommerce-cart-form table.shop_table thead th:last-child {
    border-right: 1px solid #D8CCC2 !important;
}


/* =========================================================
   7. LARGEUR ET ALIGNEMENT DES COLONNES
   ========================================================= */

/* Suppression */
.woocommerce-cart-form th.product-remove,
.woocommerce-cart-form td.product-remove {
    width: 4%;

    padding-left: 8px !important;
    padding-right: 8px !important;

    text-align: center !important;
}

/* Produit */
.woocommerce-cart-form th.product-name,
.woocommerce-cart-form td.product-name {
    width: 50%;

    padding-left: 12px !important;
    padding-right: 12px !important;

    text-align: left !important;
}

/* Prix */
.woocommerce-cart-form th.product-price,
.woocommerce-cart-form td.product-price {
    width: 13%;

    padding-left: 12px !important;
    padding-right: 12px !important;

    text-align: left !important;
}

/* Quantité */
.woocommerce-cart-form th.product-quantity,
.woocommerce-cart-form td.product-quantity {
    width: 13%;

    padding-left: 8px !important;
    padding-right: 8px !important;

    text-align: center !important;
}

/* Sous-total */
.woocommerce-cart-form th.product-subtotal,
.woocommerce-cart-form td.product-subtotal {
    width: 20%;

    padding-left: 12px !important;
    padding-right: 18px !important;

    text-align: right !important;
}


/* =========================================================
   8. ALIGNEMENT VERTICAL DES PRODUITS
   ========================================================= */

/* Croix, nom, prix, quantité et sous-total sur le même axe */
.woocommerce-cart-form tbody td.product-remove,
.woocommerce-cart-form tbody td.product-name,
.woocommerce-cart-form tbody td.product-price,
.woocommerce-cart-form tbody td.product-quantity,
.woocommerce-cart-form tbody td.product-subtotal {
    vertical-align: top !important;
}


/* =========================================================
   9. CROIX DE SUPPRESSION
   ========================================================= */

.woocommerce-cart-form td.product-remove a.remove {
    display: inline-flex !important;

    align-items: center;
    justify-content: center;

    margin: 0 !important;

    line-height: 1 !important;
}

/* Correction uniquement sur grand écran */
@media (min-width: 1025px) {
    .woocommerce-cart-form td.product-remove a.remove {
        transform: translateY(-3px);
    }
}


/* =========================================================
   10. ESPACEMENT ENTRE LES PRODUITS
   ========================================================= */

.woocommerce-cart-form table.shop_table td {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
}


/* =========================================================
   11. QUANTITÉS
   ========================================================= */

/* Masquer les "1" des produits internes aux bundles */
.woocommerce-cart-form .bundled_table_item .product-quantity {
    visibility: hidden !important;
}

/* Quantité modifiable du livre */
.woocommerce-cart .quantity input.qty {
    width: 70px !important;
    min-width: 70px !important;

    padding: 8px 6px !important;

    text-align: center !important;

    color: #26353A;
    background: #FFFFFF;

    border: 1px solid #D8CCC2;
    border-radius: 0;
}


/* =========================================================
   CODE PROMO SOUS LE RÉCAPITULATIF
   ========================================================= */

/* Bloc extérieur */
.e-cart__column-end .coupon.e-cart-section {
    width: 100% !important;
    box-sizing: border-box !important;
    margin-top: 20px !important;
}


/* Le vrai conteneur du champ + bouton */
.e-cart__column-end .coupon .coupon-col {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;

    width: 100% !important;
    margin: 0 !important;
}


/* Les deux sous-conteneurs */
.e-cart__column-end .coupon .coupon-col-start,
.e-cart__column-end .coupon .coupon-col-end {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Champ code promo */
.e-cart__column-end .coupon input.input-text {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    box-sizing: border-box !important;

    padding: 10px 12px !important;

    color: #26353A !important;
    -webkit-text-fill-color: #26353A !important;

    background: #FFFFFF !important;

    border: 1px solid #D8CCC2 !important;
    border-radius: 0 !important;
}

.e-cart__column-end .coupon input.input-text::placeholder {
    color: #26353A !important;
    opacity: 0.65 !important;
}


/* Bouton */
.e-cart__column-end .coupon .coupon-col-end button,
.e-cart__column-end .coupon .coupon-col-end .button {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    box-sizing: border-box !important;
}

/* =========================================================
   13. PANIER VIDE PERSONNALISÉ
   ========================================================= */

.panier-vide,
.panier-vide > .e-con-inner {
    flex-direction: column !important;
    align-items: flex-start !important;
}

.panier-vide {
    width: 100% !important;

    padding: 30px 32px !important;

    background-color: #F7F2EC !important;
}


/* =========================================================
   14. RESPONSIVE — TABLETTE
   ========================================================= */

@media (max-width: 1024px) {

    /* Panier et récapitulatif l'un sous l'autre */
    .elementor-widget-woocommerce-cart .e-cart__container {
        grid-template-columns: 1fr !important;
    }

    .elementor-widget-woocommerce-cart .e-cart__column-start,
    .elementor-widget-woocommerce-cart .e-cart__column-end {
        width: 100% !important;
        max-width: none !important;
    }
}


/* =========================================================
   RESPONSIVE — MOBILE
   ========================================================= */

@media (max-width: 767px) {

    /* =====================================================
       STRUCTURE GÉNÉRALE
       ===================================================== */

    .elementor-widget-woocommerce-cart .e-cart__container {
        grid-template-columns: 1fr !important;
    }

    .elementor-widget-woocommerce-cart .e-cart__column-start,
    .elementor-widget-woocommerce-cart .e-cart__column-end {
        width: 100% !important;
        max-width: none !important;
    }

    .woocommerce-cart-form table.shop_table {
        table-layout: auto !important;
    }

    .woocommerce-cart-form table.shop_table thead {
        display: none !important;
    }


    /* =====================================================
       PRODUIT PRINCIPAL
       ===================================================== */

    .woocommerce-cart-form table.shop_table
    tr.cart_item:not(.bundled_table_item) {
        display: grid !important;

        grid-template-columns: 24px minmax(0, 1fr);
        grid-template-areas:
            "remove name"
            ".      price"
            ".      quantity"
            ".      subtotal";

        column-gap: 10px;

        padding: 18px 0 !important;

        border: 0 !important;
    }

    /* Séparation entre deux produits / bundles principaux */
    .woocommerce-cart-form table.shop_table
    tr.cart_item:not(.bundled_table_item)
    ~ tr.cart_item:not(.bundled_table_item) {
        border-top: 1px solid #D8CCC2 !important;
    }


    /* =====================================================
       RÉINITIALISATION DES CELLULES
       ===================================================== */

    .woocommerce-cart-form table.shop_table tr.cart_item > td {
        width: auto !important;
        max-width: none !important;

        padding: 0 !important;

        border: 0 !important;

        text-align: left !important;
    }

    /* On neutralise les intitulés mobiles automatiques
       de WooCommerce */
    .woocommerce-cart-form table.shop_table td::before {
        display: none !important;
    }


    /* =====================================================
       CROIX
       ===================================================== */

    .woocommerce-cart-form td.product-remove {
        grid-area: remove;

        width: 24px !important;

        padding-top: 2px !important;

        text-align: left !important;
    }

    .woocommerce-cart-form td.product-remove a.remove {
        display: inline-flex !important;

        margin: 0 !important;

        transform: none !important;

        line-height: 1 !important;
    }


    /* =====================================================
       NOM DU PRODUIT
       ===================================================== */

    .woocommerce-cart-form td.product-name {
        grid-area: name;

        min-width: 0 !important;

        padding: 0 !important;

        text-align: left !important;
    }

    .woocommerce-cart-form td.product-name::before {
        display: none !important;
    }


    /* =====================================================
       SESSION
       ===================================================== */

    .woocommerce-cart .js-session-cart-field {
        display: grid !important;
        grid-template-columns: 1fr !important;

        gap: 5px !important;

        width: 100% !important;

        margin-top: 8px !important;
    }

    .woocommerce-cart .js-session-cart-field label {
        grid-column: 1 !important;

        margin: 0 !important;
    }

    .woocommerce-cart .js-session-cart-select {
        grid-column: 1 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .woocommerce-cart .js-session-cart-status {
        grid-column: 1 !important;
    }


    /* =====================================================
       PRIX
       ===================================================== */

    .woocommerce-cart-form td.product-price {
        grid-area: price;

        display: flex !important;
        align-items: baseline !important;

        gap: 6px;

        margin-top: 10px !important;

        white-space: nowrap;

        text-align: left !important;
    }

    .woocommerce-cart-form td.product-price::before {
        content: "Prix :";

        display: inline !important;

        margin: 0 !important;

        font-weight: 400;
    }


    /* =====================================================
       QUANTITÉ
       ===================================================== */

    /* Par défaut : aucune quantité affichée.
       C'est le cas des formations vendues à l'unité. */
    .woocommerce-cart-form td.product-quantity {
        display: none !important;
    }

    /* On la réaffiche seulement si un véritable champ
       quantité modifiable existe, comme pour le livre. */
    .woocommerce-cart-form
    td.product-quantity:has(input.qty:not([type="hidden"])) {
        grid-area: quantity;

        display: flex !important;
        align-items: center !important;

        gap: 8px;

        margin-top: 10px !important;
    }

    .woocommerce-cart-form
    td.product-quantity:has(input.qty:not([type="hidden"]))::before {
        content: "Quantité :";

        display: inline !important;

        margin: 0 !important;

        font-weight: 400;
    }


    /* =====================================================
       SOUS-TOTAL
       ===================================================== */

    /* Pour une formation à quantité imposée = 1 :
       le sous-total répète inutilement le prix. */
    .woocommerce-cart-form
    tr.cart_item:not(:has(td.product-quantity input.qty:not([type="hidden"])))
    td.product-subtotal {
        display: none !important;
    }

    /* Pour le livre, le sous-total reste pertinent. */
    .woocommerce-cart-form
    tr.cart_item:has(td.product-quantity input.qty:not([type="hidden"]))
    td.product-subtotal {
        grid-area: subtotal;

        display: flex !important;
        align-items: baseline !important;

        gap: 6px;

        margin-top: 10px !important;

        white-space: nowrap;

        text-align: left !important;
    }

    .woocommerce-cart-form
    tr.cart_item:has(td.product-quantity input.qty:not([type="hidden"]))
    td.product-subtotal::before {
        content: "Sous-total :";

        display: inline !important;

        margin: 0 !important;

        font-weight: 400;
    }


    /* =====================================================
       PRODUITS INTERNES AUX BUNDLES
       ===================================================== */

    .woocommerce-cart-form tr.bundled_table_item {
        display: grid !important;

        grid-template-columns: 24px minmax(0, 1fr);

        padding: 8px 0 12px !important;

        border: 0 !important;
    }

    .woocommerce-cart-form
    tr.bundled_table_item td.product-name {
        grid-column: 2;

        min-width: 0 !important;

        padding: 0 !important;
    }

    /* Seul le nom + éventuel sélecteur de session
       nous intéressent pour les éléments du bundle */
    .woocommerce-cart-form
    tr.bundled_table_item td.product-remove,
    .woocommerce-cart-form
    tr.bundled_table_item td.product-price,
    .woocommerce-cart-form
    tr.bundled_table_item td.product-quantity,
    .woocommerce-cart-form
    tr.bundled_table_item td.product-subtotal {
        display: none !important;
    }


    /* =====================================================
       QUANTITÉ DU LIVRE
       ===================================================== */

    .woocommerce-cart .quantity input.qty {
        width: 70px !important;
        min-width: 70px !important;
    }


    /* =====================================================
       CODE PROMO
       ===================================================== */

    .e-cart__column-end .coupon .coupon-col {
        grid-template-columns: 1fr !important;
    }

    .e-cart__column-end .coupon .coupon-col-start,
    .e-cart__column-end .coupon .coupon-col-end,
    .e-cart__column-end .coupon input.input-text,
    .e-cart__column-end .coupon button,
    .e-cart__column-end .coupon .button {
        width: 100% !important;
        max-width: none !important;
    }
}/* End custom CSS */