.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container--default .select2-selection--single {
    background: white;
    border-radius: 1rem;
    border: 1px solid rgba(193, 193, 193, 0.5);
    padding: 1.3rem;
    color: #3B3A40;
    font-size: 1.4rem;
    font-family: Montserrat;
}

.woocommerce .select2-container--default .select2-selection--single {
    height: 5rem;
}

.woocommerce form .form-row select {
    -webkit-appearance: listbox;
}

.woocommerce form .form-row input[type="checkbox"] {
    -webkit-appearance: checkbox;
}


/** ------ */

.woocommerce div.product {
    padding: 0 1.5rem;
}

.cs-shop-product-content .cs-shop-product-cat {
    color: #C1C1C1;
    font-family: Montserrat;
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.4rem;
    text-transform: uppercase;
}

.cs-shop-product-content .woocommerce-loop-product__title {
    color: #3B3A40;
    font-family: Montserrat;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height: 2rem;
}

.product.type-product .woocommerce-loop-product__thumbnail--full {
    width: 100%;
    aspect-ratio: 146/177;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

#cs-product-shop-content .woocommerce-loop-product__thumbnail--full {
    padding-left: 280px;
    max-width: 280px;
    aspect-ratio: 7/5;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.woocommerce .products .product .cs-shop-product-content .price {
    color: #0D1A0F;
    font-family: Montserrat;
    font-size: 1.4rem;
    letter-spacing: 0;
    font-weight: 800;
    line-height: 1.8rem;
}

.cs-shop-product-city {
    color: #3B3A40;
    font-family: Montserrat;
    font-size: 1.2rem;
    letter-spacing: -0.1px;
    line-height: 1.5rem;
    text-transform: uppercase;
}

.woocommerce div.product>a.woocommerce-loop-product__link {
    position: relative
}

.cs-shop-product-badge {
    position: absolute;
    top: 2.8rem;
    left: 1.8rem;
    border-radius: 1.2rem;
    padding: 0.7rem 1.3rem;
    font-family: Montserrat;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.8rem;
    color: #1E4122;
}

.cs-shop-product-badge.cs-shop-product-badge-new {
    background-color: #F9B400;
}

.cs-shop-product-badge.cs-shop-product-badge-bestsales {
    background-color: #D2EDEA;
}

/* Pagination */

.woocommerce nav.woocommerce-pagination ul {
    clear: both;
    border: none;
    margin: 0;
    display: flex;
    gap: 1rem;
    justify-content: center;
}

.woocommerce nav.woocommerce-pagination ul li {
    border: none;
    float: none;
}

.woocommerce .woocommerce-pagination ul.page-numbers li,
.woocommerce-page .woocommerce-pagination ul.page-numbers li {
    display: block;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {

    border-radius: 50%;
    padding: 0;
    width: 3.5rem;
    height: 3.5rem;
    line-height: 3.5rem;

    color: #0D1A0F;
    font-family: Montserrat;
    font-size: 1.6rem;
    font-weight: 300;
    letter-spacing: 0.09px;
    text-align: center;

}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background-color: #1E4122;
    color: white;
}

/* --------- */

body .woocommerce-info {
    border-top-color: var(--cs-color-header);
}

body .woocommerce-info::before {
    color: var(--cs-color-header);
}

body .woocommerce-notices-wrapper a {
    color: inherit;
}

body .woocommerce-notices-wrapper a:hover {
    text-decoration: underline;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--support-tickets a:before,
body.storefront-secondary-navigation .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--support-tickets a:before {
    content: "" !important
}

/*  ---- */



#payment a {
    color: #93B297;
    text-decoration: none;
}

#payment a:hover {
    text-decoration: underline;
}

button#place_order {
    background-color: #93B297;
    transition: color 0.3s;
}

button#place_order:hover {
    background-color: var(--cs-color-header);
}

.woocommerce form .form-row {
    padding: 3px 0;
}

/* --------- */

div.woocommerce>div.woocommerce-order {
    margin: 4rem 0;
}

/* ----- */


dd.variation-Dure {
    float: left;
}

.woocommerce td.product-name dt {
    font-weight: bold;
}

.woocommerce td.product-name dl.variation p {
    margin: 1.2rem 0;
}

.woocommerce td.product-name dd.variation-Dure p {
    margin: 0;
}

.woocommerce-cart-form__cart-item td.product-name>a {
    font-weight: bold;
}

.woocommerce form #customer_details {
    flex: 1;
}

.woocommerce form #customer_details .form-row:not(.mp_hidden) {
    display: flex;
    align-items: center;
}

.woocommerce form #customer_details .form-row label {
    font-weight: bold;
    margin-right: 1.5rem;
    white-space: nowrap;
}

.woocommerce form #customer_details .form-row input.input-text,
.woocommerce form #customer_details .form-row textarea,
.woocommerce form #customer_details .form-row select,
.woocommerce #customer_details .select2-container--default .select2-selection--single {
    border: none;
    padding: 0.3rem 0.5rem 0.3rem 0;
}

.woocommerce-additional-fields {
    display: none;
}

#customer_details {
    margin-bottom: 4rem;
}

#customer_details .col-1,
#customer_details .col-2 {
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    padding: 0 3rem 3rem 3rem;
    border-radius: 10px;
}

#customer_details .col-2 {
    display: none;
}

#customer_details .col-1 {
    float: none;
    width: 100%;
}

#order_review {
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    border: none;
    padding: 0 3rem 3rem 3rem;
    border-radius: 10px;
    margin-bottom: 6rem;
    flex: 0 0 52rem;
}

.woocommerce-checkout #payment {
    background: white;
}

#order_review>h3 {
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 -3rem 2rem -3rem;
    padding: 2rem 3rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.woocommerce-checkout #payment div.payment_box {
    background-color: white;
    color: inherit;
    padding: 0;
}

.woocommerce-checkout #payment div.payment_box:before {
    display: none;
}


#customer_details .col-1>h3 {
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 -3rem 2rem -3rem;
    padding: 2rem 3rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.woocommerce-billing-fields>h3 {
    display: none;

}

#billing_email_field {
    margin-bottom: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
    padding: 0;
}

.woocommerce-checkout #payment div.form-row {
    padding: 0;
}

.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address {
    font-family: Montserrat;
    font-size: 18px;
    float: none;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 -3rem 2rem -3rem;
    padding: 2rem 3rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.wc_payment_method>label[for="payment_method_mangopay"] {
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 -3rem 2rem -3rem;
    padding: 2rem 3rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    display: block;
}

.woocommerce #payment .terms {
    float: none;
}

button#place_order {
    display: inline-block;
    margin-top: 2rem;
    border-radius: 19px;
    background-color: #F9B402;
    color: #0D1A0F;
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 22px;
    text-transform: uppercase;
    padding: 1.5rem 3rem;
    transition: background-color 0.3s;
    float: none;
    width: 100%
}

button#place_order:hover {
    background-color: #c99202;
}

form.woocommerce-checkout {
    display: flex;
    gap: 3rem;
    flex-wrap: wrap;
}

form.woocommerce-checkout .woocommerce-NoticeGroup {
    flex: 1 1 100%;
    white: 100%;
    margin-bottom: 3rem;
}

.woocommerce-checkout h2.cs-title {
    margin: 4rem 0;
}

.select2-container--open .select2-dropdown {
    width: 30rem !important;
}

.woocommerce .select2-container--default .select2-selection--single {
    height: auto;
}

.woocommerce-checkout .cs-title i {
    display: inline-block;
    margin-right: 1.5rem;
}

.woocommerce-checkout .cs-title:before {
    width: 1000%;
}


/** ----- MES ACHATS ------ **/

#cs-page-mes-achats {
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    padding: 3rem;
}

#cs-page-mes-locations #cs-product-shop-content,
#cs-page-mes-achats-orders #cs-product-shop-content {
    box-shadow: none;
}

#cs-page-mes-achats .cs-title:before {
    margin-left: -3rem;
}

.cs-page-mes-achats-order-header {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 1rem;
}

.cs-page-mes-achats-order-header>div {
    flex: 1 1 auto;
}

.cs-page-mes-achats-order-id {
    font-weight: bold;
    font-size: 2rem;
    margin-bottom: 0.6rem;
}

.cs-page-mes-achats-order-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-end;
}

.cs-page-mes-achats-order-date {
    margin-bottom: 1.3rem;
}

.cs-page-mes-achats-order-actions>a {
    border: 1px solid #C1C1C1;
    border-radius: 19px;
    display: inline-block;
    width: 25rem;
    padding: 1rem 1.5rem;
    text-align: center;
    color: #3B3A40 !important;
    font-family: Montserrat;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.8rem;
    transition: background 0.2s;
}

.cs-page-mes-achats-order-actions>a:hover {
    text-decoration: none !important;
    background: #f0f0f0;
}

.cs-page-mes-achats-order-products {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.cs-page-mes-achats-order-product {
    display: flex;
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    align-items: center;
}

.cs-page-mes-achats-order-product-details {
    padding: 1.5rem;
}

.cs-page-mes-achats-order-product-name {
    font-family: Montserrat;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: -0.13px;
    line-height: 1.9rem;
    margin-bottom: 3.5rem;
}

.cs-page-mes-achats-order-product-image {
    width: 28.6rem;
    height: 22.6rem;
    line-height: 22.6rem;
    text-align: center;
    border-right: 1px solid #f0f0f0;
}

.cs-page-mes-achats-order-product-image img {
    vertical-align: middle;
}

.cs-page-mes-achats-order-product-cat {
    font-family: Montserrat;
    font-size: 1.2rem;
    letter-spacing: -0.1px;
    line-height: 1.5rem;
    margin-bottom: 1.8rem;
}

.cs-page-mes-achats-order-product-livraison>div {
    color: #FFFFFF;
    font-family: Montserrat;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: -0.12px;
    line-height: 1.8rem;
    border-radius: 8px;
    background-color: var(--cs-shop-product-livraison);
    padding: 0.6rem 2rem;
    display: inline-block;
}

.cs-page-mes-achats-order-product-livraison i {
    padding-right: 0.5rem;
}

.cs-page-mes-achats-order-status {
    border-radius: 3px;
    background: #f0f0f0;
    color: black;
    display: inline-block;
    padding: 0.3rem 0.7rem;
}


/** ----- MES LOCATIONS ------ **/

#cs-page-mes-locations {
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    padding: 3rem;
}

#cs-page-mes-locations .cs-title:before {
    margin-left: -3rem;
}


.cs-page-mes-locations-order-products {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 3rem 0;
}

.cs-page-mes-locations-order-product {
    display: flex;
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 12%);
    align-items: center;
}

.cs-page-mes-locations-order-product-details {
    padding: 1.5rem;
}

.cs-page-mes-locations-order-product-name {
    font-family: Montserrat;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: -0.13px;
    line-height: 1.9rem;
    margin-bottom: 3.5rem;
}

.cs-page-mes-locations-order-product-image {
    width: 28.6rem;
    height: 22.6rem;
    line-height: 22.6rem;
    text-align: center;
    border-right: 1px solid #f0f0f0;
}

.cs-page-mes-locations-order-product-image img {
    vertical-align: middle;
}

.cs-page-mes-locations-order-product-cat {
    font-family: Montserrat;
    font-size: 1.2rem;
    letter-spacing: -0.1px;
    line-height: 1.5rem;
    margin-bottom: 1.8rem;
}

.cs-page-mes-locations-order-product-status {
    border-radius: 3px;
    background: #f0f0f0;
    color: black;
    display: inline-block;
    padding: 0.3rem 0.7rem;
}

.cs-page-mes-locations-order-product-dates {
    font-weight: bol;
    margin-bottom: 0.5rem;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    width: 3rem;
    height: 3rem;
}

.woocommerce nav.woocommerce-pagination ul {
    gap: 0.4rem;
}

@media all and (min-width: 992px) {

    .woocommerce nav.woocommerce-pagination ul li a,
    .woocommerce nav.woocommerce-pagination ul li span {
        width: 3.5rem;
        height: 3.5rem;
    }

    .woocommerce nav.woocommerce-pagination ul {
        gap: 1rem;
    }
}

/** -------------------------- **/