/* #region Cart */
.wc-block-mini-cart.wp-block-woocommerce-mini-cart {
    visibility: visible !important;
}

.woocommerce-cart main .woocommerce,
.woocommerce-checkout main .woocommerce {
    max-width: 1380px;
    margin: 0 auto;
}

.woocommerce-page table.shop_table_responsive {
    background: #fff;
    border-radius: 24px;
    border-width: 0;
}

.woocommerce-cart .cart-collaterals .shipping-calculator-button {
    text-decoration: none;
    color: #ff6400;
}

.woocommerce-cart-form input,
.woocommerce-cart-form button {
    border-radius: 25px;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    border-radius: 36px;
}

.variation p:first-letter {
    text-transform: uppercase;
}

th.product-name {
    min-height: 57px;
}

.woocommerce-cart table.cart td {
    min-height: 125px;
}

dl.variation {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 20px;
}

dl.variation dt,
dl.variation dd {
    margin: 0;
}

dl.variation p {
    margin: 0;
}

.woocommerce td.product-remove a {
    height: 28px;
    width: 28px;
}

.woocommerce td.product-remove a:hover {
    background: none;
}

.woocommerce td.product-remove a svg {
    height: 28px;
    width: 28px;
}

.woocommerce td.product-remove a:hover svg path {
    stroke: #000000;
}

.woocommerce td.product-name dl.variation dt {
    float: none;
    clear: none;
    margin-right: 0;
}

.woocommerce td.product-name dl.variation dd {
    margin-inline-start: 0;
}

.coupon .button {
    height: 50px;
    padding: 10px 20px;
}

.actions>button.button.wp-element-button {
    display: none !important;
}

p.woocommerce-shipping-destination {
    display: none;
}

/* #endregion Cart*/
/* #region Checkout */
.entry-content.alignwide.wp-block-post-content.is-layout-flow.wp-block-post-content-is-layout-flow {
    margin-top: 25px;
}

.woocommerce {
    margin: 0 !important;
}

.woocommerce-page form .form-row label {
    margin-bottom: 0;
}

.woocommerce-checkout {
    display: flex;
}

#wc-stripe-express-checkout-element {
    padding: 21px;
    border: 1px #D9D9D9 solid;
    border-radius: 5px;
}

.left-column {
    background-color: white;
    padding-left: 120px;
    padding-right: 20px;
    width: 792px;
}

.left-column>h4 {
    margin: 0;
    text-align: center;
    background-color: white;
    width: fit-content;
    padding: 0 20px;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(26px);
}

#wc-stripe-express-checkout-element {
    padding: 21px;
    border: 1px #D9D9D9 solid;
    border-radius: 5px;
}

p#wc-stripe-express-checkout-button-separator {
    display: none !important;
}

.col2-set {
    display: flex;
    flex-direction: column;
}

.col-1,
.col-2 {
    width: 100% !important;
}

#customer_details label {
    height: 32px;
}

.woocommerce-checkout h3 {
    margin-top: 35px;
}

#billing_address_1_field,
#shipping_address_1_field {
    float: left;
    width: 47%;
}

#billing_address_2_field,
#shipping_address_2_field {
    float: right;
    width: 47%;
    clear: none;
    margin-top: 32px;
}

#billing_city_field,
#shipping_city_field {
    float: left;
    width: 47%;
}

#billing_state_field,
#shipping_state_field {
    clear: none;
    float: right;
    width: 47%;
}

#ship-to-different-address label {
    display: flex;
    gap: 10px;
    align-items: center;
}

#ship-to-different-address-checkbox {
    position: relative;
    appearance: none;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    background: white;
    border-radius: 3px;
    border: 1px solid black;
    transition: background-color 0.1s ease-out;
}

#ship-to-different-address-checkbox:checked {
    background: #ff6400;
}

#ship-to-different-address-checkbox:after {
    content: "";
    background: no-repeat center / contain;
    background-image: url('data:image/svg+xml;utf8,<svg width="10" height="8" viewBox="0 0 10 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.52832 0.528931C8.78789 0.269365 9.21 0.269631 9.46973 0.528931C9.72943 0.788629 9.72943 1.21064 9.46973 1.47034L3.96973 6.97034C3.71003 7.23004 3.28802 7.23004 3.02832 6.97034L0.52832 4.47034C0.269021 4.21061 0.268755 3.7885 0.52832 3.52893C0.787886 3.26937 1.20999 3.26963 1.46973 3.52893L3.49902 5.55823L8.52832 0.528931Z" fill="white"/></svg>');
    position: absolute;
    top: 3px;
    left: 1px;
    width: 12.5px;
    height: 10px;
    opacity: 0;
    transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

#ship-to-different-address-checkbox:checked:after {
    opacity: 1;
}

p#billing_email_field,
p#order_comments_field {
    margin-bottom: 0;
}

#uploadError {
    color: red;
    font-size: 15px;
    font-weight: 600;
}

#payment {
    border-radius: 12px !important;
    border: 1px #DFDFDF solid;
    background: white !important;
}
#payment a
{
    color: #FF6400;
}

ul.wc_payment_methods.payment_methods.methods {
    padding: 0 !important;
}

li.wc_payment_method.payment_method_stripe {
    padding: 14px 0;
    border-radius: 24px;
}

.input-radio {
    margin-left: 14px !important;
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid #FF6400;
    display: inline-grid;
    place-content: center;
    cursor: pointer;
    transform: translateY(-2px);
}

.input-radio:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FF6400;
    transform: scale(0);
    transition: transform .12s ease-in-out;
}

.input-radio:checked:before {
    transform: scale(1);
}

.woocommerce-checkout #payment div.payment_box::before {
    content: none !important;
}

.payment_box.payment_method_stripe {
    background-color: #f4f4f4 !important;
    padding: 0 !important;
}

.payment_box>fieldset {
    margin: 0;
    border: none;
}

.woocommerce-checkout #payment div.payment_box {
    margin-bottom: 0;
    background-color: #f4f4f4;
}

a.woocommerce-privacy-policy-link,
a.woocommerce-privacy-policy-link:focus,
a.woocommerce-privacy-policy-link:hover,
a.woocommerce-privacy-policy-link:visited {
    color: #FF6400;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    float: none;
    background-color: #CAFA10;
    color: black;
    border-radius: 50px;
    width: 100%;
    font-weight: 600;
    box-shadow: 0px 1px 4px 0px #18191B33;
}

.right-column {
    width: 648px;
    padding-left: 41px;
}

.woocommerce-page table.shop_table {
    width: 100%;
    border: none;
}

.product-name {
    display: flex;
    padding: 0 !important;
    gap: 40px;
    align-items: center;
}

.product-thumbnail-with-number {
    position: relative;
    width: 70px;
    height: 70px;
}

.checkout-product-thumb {
    display: block;
    width: 70px;
    height: 70px;
}

.checkout-product-thumb img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.product-thumbnail-with-number .product-quantity {
    position: absolute;
    top: -6px;
    left: 45px;
    text-align: center;
    line-height: normal;
    background-color: #FF6400;
    border-radius: 50px;
    font-size: 16px;
    color: white;
    padding: 0 6px;
}

.product-name-with-info {
    font-size: 14px;
    line-height: normal;
}

.variation {
    color: #757575;
    font-size: 13px;
    line-height: normal;
    margin-top: 0;
}

.product-name-with-info .variation {
    font-size: 10px;
}

.woocommerce-form-coupon-toggle {
    display: none;
}

#woocommerce-checkout-form-coupon {
    display: block !important;
    border: none;
}

.checkout_coupon button.button.wp-element-button {
    height: 50px;
    border-radius: 35px;
    padding: 10px 20px;
}

.woocommerce input[type="file"]::file-selector-button {
    font-family: 'Inter';
    background-color: #32373c;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 30px;
    cursor: pointer;
}

/* #endregion */
/* #region Commande reçue */
main.has-global-padding {
    padding: 0 30px;
}

.wp-block-woocommerce-order-confirmation-summary.wc-block-order-confirmation-summary.alignwide,
.wp-block-woocommerce-order-confirmation-totals-wrapper.wc-block-order-confirmation-totals-wrapper.alignwide,
.wp-block-columns.alignwide.wc-block-order-confirmation-address-wrapper.is-layout-flex.wp-container-core-columns-is-layout-28f84493.wp-block-columns-is-layout-flex {
    margin-top: 50px;
}

.wc-block-order-confirmation-totals__product a,
.wc-block-order-confirmation-totals__product a:hover,
.wc-block-order-confirmation-totals__product a:focus,
.wc-block-order-confirmation-totals__product a:visited {
    color: black;
    text-decoration: none;
    font-weight: 500;
}

.wc-block-mini-cart.wp-block-woocommerce-mini-cart {
    visibility: visible !important;
}

.wc-item-meta p:first-letter {
    text-transform: uppercase;
}

/* #endregion */

body.woocommerce-cart .woocommerce-cart-form {
    position: relative;
}

.cart-left-info {
    margin-top: 24px;
}

.cart-left-info__inner {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    max-width: 50%;
    padding: 20px 24px;
    border-radius: 16px;
    background-color: #f6f6f6;
}

.cart-left-info__img {
    width: 64px;
    height: auto;
    flex-shrink: 0;
}

.cart-left-info__content {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cart-left-info__title {
    font-size: 15px;
    font-weight: 600;
    color: #000;
}

.cart-left-info__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cart-left-info__list li {
    font-size: 14px;
    color: #343537;
    position: relative;
    padding-left: 22px;
}

.cart-left-info__list li::before {
    content: "✔";
    position: absolute;
    left: 0;
    top: 0;
    color: #2aa72a;
    font-size: 14px;
}

/* ========================= */
/* DESKTOP : 2 colonnes     */
/* ========================= */
@media (min-width: 993px) {
    body.woocommerce-cart .cart-collaterals {
        display: flex;
        gap: 24px;
        align-items: flex-start;
    }

    body.woocommerce-cart .cart-left-info {
        flex: 1 1 0;
        margin-top: 0;
    }

    body.woocommerce-cart .cart-left-info__inner {
        max-width: 100%;
    }

    body.woocommerce-cart .cart_totals {
        flex: 1 1 0;
        margin-top: 0;
    }
}


/* #region Notebooks */
@media (min-width: 993px) and (max-width: 1439px) {
    dl.variation {
        grid-template-columns: 31vw;
    }

    main.has-global-padding {
        padding: 0;
    }

    .left-column {
        padding-left: 5%;
        padding-right: 1%;
        width: 60%;
    }

    .right-column {
        width: 40%;
        padding-left: 1%;
    }

    .product-thumbnail-with-number {
        width: 3vw;
        height: 3vw;
    }

    .checkout-product-thumb {
        width: 3vw;
        height: 3vw;
    }

    .product-thumbnail-with-number .product-quantity {
        left: 2vw;
        font-size: 1.3vw;
    }

    .product-name-with-info {
        font-size: 1.5vw;
        width: 18vw;
    }

    .checkout_coupon button.button.wp-element-button {
        font-size: 1.1vw;
    }
}

/* #endregion */
/* #region Mobile */
@media (max-width: 992px) {
    .wp-site-blocks {
        max-width: -webkit-fill-available;
    }

    main.has-global-padding {
        padding: 0 5px !important;
    }

    .woocommerce-cart .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item {
        border-bottom: 1px black solid;
    }

    .woocommerce-checkout-review-order-table tr.cart_item,
    .woocommerce-checkout-review-order-table tr.cart_item .product-name {
        height: 110px;
    }

    #coupon_code {
        font-size: 2.7vw !important;
        height: 50px !important;
        border-radius: 24px;
    }

    .coupon button.button.wp-element-button {
        font-size: 2.7vw;
        height: 50px;
        padding: 0;
    }

    .woocommerce-page table.shop_table_responsive tbody td {
        padding-left: 10px !important;
        padding-right: 10px !important;
        min-height: fit-content !important;
    }

    td.product-remove a.remove {
        margin-left: auto;
        margin-right: auto;
    }

    .woocommerce table.shop_table_responsive tr:nth-child(2n) td,
    .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
        background-color: unset;
    }

    .woocommerce-page .woocommerce-cart-form .coupon {
        flex-wrap: nowrap;
        gap: 10px;
    }

    .woocommerce-checkout {
        flex-direction: column;
    }

    .left-column {
        padding-left: 5px;
        padding-right: 5px;
        width: 100%;
    }

    .right-column {
        width: 100%;
        padding-left: 0;
    }

    .right-column table.shop_table.woocommerce-checkout-review-order-table {
        display: none;
    }

    #woocommerce-checkout-form-coupon {
        margin-top: 0;
    }

    .checkout_coupon .form-row {
        margin-bottom: 0 !important;
    }

    .checkout_coupon button.button.wp-element-button {
        height: 50px;
        font-size: 2.7vw;
        border-radius: 35px;
    }

    body.woocommerce-cart .cart-collaterals {
        display: block !important;
        /* annule le flex desktop */
    }

    body.woocommerce-cart .cart-left-info {
        width: 100%;
        margin-bottom: 24px;
    }

    body.woocommerce-cart .cart-left-info__inner {
        max-width: 100%;
    }

    body.woocommerce-cart .cart_totals {
        width: 100% !important;
        float: none !important;
        clear: both !important;
    }
}

/* #endregion */

/* ancien CSS (version astra)
.woocommerce-js table.shop_table, .woocommerce-page table.shop_table //Tableau avec les infos des achats sur la page panier
{
	border: 1px solid #eee7e7;
    border-radius: 10px!important;
    border-collapse: separate;
    overflow: hidden;
}
.woocommerce-js table.shop_table thead, .woocommerce-page table.shop_table thead //En-tête de ce tableau
{
    background-color: #272626;
    color: #fff;
    border-radius: 10px;
}
.woocommerce-js table.shop_table th //Titres dans cet en-tête
{
    font-weight: 400;
}
.woocommerce-cart table.shop_table thead th.product-thumbnail, .woocommerce-cart table.shop_table thead th.product-name,
.woocommerce-cart table.shop_table thead th.product-price, .woocommerce-cart table.shop_table thead th.product-quantity //Séparations entre les titres de l'en-tête
{
	border-right: 1px solid #737070;
}
.woocommerce-cart table.shop_table thead th.product-subtotal //Pas d'espace à droite du tableau
{
	padding-right: 0;
}
.woocommerce-cart-form__cart-item td.product-remove //Case de la croix au début de la ligne pour retirer un produit
{
	padding: 0 !important;
}
.woocommerce-cart-form__cart-item td.product-remove a.remove //Croix au début de la ligne pour retirer un produit
{
	color:red;
	font-weight: 600;
}
.woocommerce-cart table.shop_table td.product-thumbnail //Td qui contient l'image du produit au début de la ligne
{
	padding: 0 5px!important;
}
.woocommerce-js table.shop_table .product-thumbnail img, .woocommerce-page table.shop_table .product-thumbnail img //Image du produit au début de la ligne
{
	max-width: 100px;
}
.woocommerce-cart table.shop_table dl //Section caractéristiques du produit
{
	font-size: 0.7em;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 5px;
}
.woocommerce-cart table.shop_table dl dd, .woocommerce-cart table.shop_table dl dt //Chaque caractéristique
{
    margin: 0;
    border-bottom: 1px solid #eee;
    padding: 3px 0;
    line-height: normal;
}
.woocommerce-cart table.shop_table dl dd.variation-Nombredecouleursdelimpression,
.woocommerce-cart table.shop_table dl dt.variation-Nombredecouleursdelimpression //Pas de ligne du bas si on a sélectionné une impression
{
	border-bottom: none;
}
.woocommerce-cart table.shop_table dl dd p //Texte de la valeur de chaque caractéristique
{
	margin-bottom: 0;
}
.woocommerce-cart table.shop_table td.product-price,
.woocommerce-cart table.shop_table td.product-quantity //Prix et quantité
{
	border-right: 1px solid #eee7e7;
	font-size: 0.8em;
	text-align: center;
}
.woocommerce-cart table.shop_table td.product-subtotal //Sous-total
{
    padding: 0 1.5em;
    text-align: center;
    font-size: 0.8em;
}
.woocommerce-cart table.shop_table td.product-subtotal .woocommerce-Price-amount //Valeur du Sous-total
{
	font-weight: 500;
}
// region Section "Total Panier" sur la droite
.woocommerce-cart .cart-collaterals .cart_totals // Total du panier sur la droite
{
    border-radius: 10px;
    border: 1px solid #eee7e7;
}
.woocommerce-cart .cart-collaterals .cart_totals h2 { //Titre (total panier)
    background: #272626;
    color: #cafa10;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    font-size: 1.1em;
    font-weight: 500;
}
.woocommerce-cart .cart-collaterals .cart_totals .shop_table //Informations dans l'encadré du total
{
    font-size: 0.9em;
    border-bottom:0;
}
.woocommerce-cart .cart-collaterals .cart_totals .shop_table tr.order-total //Prix final
{
    color:#ff6400;
    font-size: 1.1em;
}
.woocommerce-cart .cart-collaterals .cart_totals .shop_table tr.order-total .amount //Span qui contient le prix final
{
    font-weight: 500;
}

// Tous les éléments qui doivent être mis aux couleurs du thème dans les pages de checkout
.woocommerce-cart .cart-collaterals .cart_totals a.button,
#shipping-calculator-form button.button,
.woocommerce-page .woocommerce-message .button
{
    color:#cafa10;
    background-color: #272626;
    border-radius: 10px;
}
.woocommerce-cart .cart-collaterals a.shipping-calculator-button,
.woocommerce-message a.restore-item {
    text-decoration: underline;
    text-decoration-style: dashed;
}