/*
 Theme Name: Astra Child
 Theme URI: https://wpastra.com/
 Author: J.-Baptiste Ballion
 Template: astra
 Description: Thème enfant basé sur Astra.
 Version: 1.1.63
*/


.ast-desktop .ast-primary-header-bar.main-header-bar, .ast-header-break-point #masthead .ast-primary-header-bar.main-header-bar {
    margin-top: 0 !important;
}

.woocommerce-page .site-content {
    overflow: auto;
}

.woocommerce-cart #primary, .woocommerce-checkout #primary {
    max-width: 900px;
    margin: 0 auto !important;
    padding: 0 !important;
}

@media screen and (max-width: 768px) {
    body #primary, .woocommerce-page .has-one-sidebar > section, .woocommerce-page .theme-content, .woocommerce-page #left-area, .woocommerce-page #content, .woocommerce-page .sections_group, .woocommerce-page .content-box, body #main-sidebar-container #main {
        -webkit-box-ordinal-group: 1;
        -moz-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }
}

.woocommerce-cart .site-content .ast-container, .woocommerce-checkout .site-content .ast-container {
    justify-content: center;
}

.woocommerce .woocommerce-products-header__title.page-title {
    font-weight: 600;
    margin-bottom: 30px;
}

.wc-block-components-button:not(.is-link):focus, .wp-element-button {
    outline-color: transparent !important;
    box-shadow: none !important;
}

.ast-on-card-button {
    display: none !important;
}

@media (min-width: 545px) and (max-width: 700px) {
    .add_to_cart_button {
        font-size: 12px !important;
        padding: 10px 15px !important;
    }
}

@media (max-width: 400px) {
    .add_to_cart_button {
        font-size: 12px !important;
    }
}

.lmp_products_loading span {
    display: none;
}

/*************
*   HEADER   *
*************/
#ast-desktop-header {
    display: block;
}

#ast-mobile-header {
    display: none !important;
}

@media (max-width: 921px) {
    .ast-header-break-point .ast-primary-header-bar {
        display: block;
    }
}

body:not(.ast-theme-transparent-header) .main-header-bar {
    background: #91af61;
}

body:not(.ast-theme-transparent-header) .main-header-bar .custom-logo-link img {
    filter: brightness(100);
}

body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link {
    color: #ffffff;
}

body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link, body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu > .inline-on-mobile .menu-item:hover > .ast-menu-toggle {
    color: #546942;
}

body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu .menu-item .sub-menu:before, body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu .menu-item .astra-full-megamenu-wrapper:before {
    background: #556942 !important;
    height: 2px;
}

body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link, body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .sub-menu .inline-on-mobile .menu-item:hover > .ast-menu-toggle {
    color: white;
    background: #556942;
}

.ast-theme-transparent-header .main-header-menu > .menu-item:hover > .menu-link {
    color: #91af61 !important;
}

body:not(.ast-theme-transparent-header) .header-widget-area[data-section="sidebar-widgets-header-widget-1"].header-widget-area-inner a:hover {
    color: #556942;
}

@media (max-width: 1024px) {
    header .custom-logo-link img, .ast-header-break-point .site-logo-img .custom-mobile-logo-link img {
        max-width: 120px !important;
        width: 120px !important;
    }
}    
    
@media (max-width: 921px) {

    [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill {
        background: #ffd93600;
    }
    
    [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill:hover span svg, [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill.toggled {
        fill: #222;
    }
    
    body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link {
        color: inherit;
    }
    
    .ast-header-break-point .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle>.ast-icon.icon-arrow {
        transform: translateY(3px);
        display: block;
    }
    
    body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link, body:not(.ast-theme-transparent-header) .ast-builder-menu-1 .sub-menu .inline-on-mobile .menu-item:hover > .ast-menu-toggle {
        color: inherit;
        background: inherit;
    }
    
    .ast-builder-menu-1 .menu-item:hover > .ast-menu-toggle {
        color: inherit;
    }
    
    .ast-builder-menu-1 .ast-submenu-expanded > .ast-menu-toggle {
        rotate: 180deg;
        transform: translate(-10px, -3px);
    }
    
    body:not(.ast-theme-transparent-header) .header-widget-area[data-section="sidebar-widgets-header-widget-1"].header-widget-area-inner a:hover {
        color: #222;
    }
    
    .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-builder-menu-1 .menu-item.current-menu-item > .menu-link, .ast-builder-menu-1 .current-menu-ancestor > .menu-link {
        color: inherit !important;
    }
    
    .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu {
        background-color: transparent !important;
    }
}

.ast-theme-transparent-header .main-header-menu .sub-menu .menu-item:hover > .menu-link {
    background: #91af61 !important;
    color: #F5F5F5;
}

.ast-theme-transparent-header .main-header-menu .sub-menu .menu-item> .menu-link {
    background: #F5F5F5 !important;
    color: #546942;
}

.ast-theme-transparent-header [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill {
    background: #91af6100;
}

.ast-builder-menu-1 .current-menu-ancestor > .menu-link, .ast-builder-menu-1 .menu-item.current-menu-item > .menu-link {
    color: inherit;
}

/* ICONE PANIER */
.wc-block-cart-link {
    position: relative;
}

.wc-block-cart-link .cart-count-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    background: #e53935;
    color: #fff;
    font-size: 11px;
    height: 18px;
    min-width: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    font-weight: bold;
    line-height: 1;
}

@media (max-width: 921px) {
    .header-widget-area[data-section="sidebar-widgets-header-widget-1"] {
        margin-top: 0;
    }
}


/*************
*  BOUTIQUE  *
*************/
.wpc-filters-widget-top-container, .woocommerce-shop .woocommerce-breadcrumb {
    display: none !important;
}

.woocommerce-shop #primary, .archive.tax-product_cat #primary, .archive[class*="tax-pa_"] #primary {
    margin-top: 20px !important;
    padding-top: 10px !important
}

@media (min-width: 1201px) {
    .woocommerce-shop #primary, .archive.tax-product_cat #primary, .archive[class*="tax-pa_"] #primary {
        margin-top: 0px !important;
    }
    
    .ast-separate-container .ast-woocommerce-container {
        padding: 5.34em 1.67em;
    }
}

@media (max-width: 1024px) {
    .woocommerce-shop .site-content .ast-container, .archive.tax-product_cat .site-content .ast-container, .archive[class*="tax-pa_"] .site-content .ast-container {
        display: flex;
        flex-direction: column-reverse;
    }
    
    .woocommerce-shop #primary, .archive.tax-product_cat #primary, .archive[class*="tax-pa_"] #primary  {
        width: 100%;
    }
}

.wpc-filters-section:not(.wpc-filter-more-less):not(.wpc-filter-post_meta_num):not(.wpc-filter-tax_numeric):not(.wpc-filter-layout-dropdown):not(.wpc-filter-terms-count-0) .wpc-filter-content:not(.wpc-filter-has-hierarchy) ul.wpc-filters-ul-list {
    max-height: none !important;
    overflow-y: visible !important;
    columns: 2 !important;
}

.wpc-filters-section:not(.wpc-filter-more-less):not(.wpc-filter-post_meta_num):not(.wpc-filter-tax_numeric):not(.wpc-filter-layout-dropdown):not(.wpc-filter-terms-count-0) .wpc-filter-content:not(.wpc-filter-has-hierarchy) ul.wpc-filters-ul-list.wpc-filters-checkboxes.wpc-filters-list-2349 {
    columns: 1 !important;
}

/* 🔵 Bouton mobile */
.btn-filtres-mobile {
    display: none;
    background: #91af61;
    color: white;
    padding: 12px 30px 13px;
    border: none;
    border-radius: 50px;
    font-size: 16px;
    width: auto;
    margin-bottom: 12px;
}

html.is-active .wpc-filters-overlay {
    opacity: .05 !important;
}

/* 🔵 Visible sur mobile/tablette */
@media (max-width: 550px) {
     .ast-filter-wrap {
        width: 100%;
    }
}

@media (max-width: 1024px) {
    .btn-filtres-mobile {
        display: inline-block;
    }

    /* On cache les filtres normaux */
    .ast-filter-wrap {
        transform: translateX(-100%);
        position: fixed;
        top: 0;
        left: 0;
        width: 80%;
        height: 100vh;
        background: #fff;
        z-index: 999999;
        overflow-y: scroll;
        padding: 20px;
        transition: transform 0.3s ease;
    }

    /* Quand ouvert */
    .ast-filter-wrap.open {
        transform: translateX(0);
        box-shadow: 3px 0 5px 0px #0000000d;
    }

    /* Overlay */
    #filters-overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0,0,0,0.4);
        z-index: 999998;
    }

    #filters-overlay.active {
        display: block;
    }
}

/* Croix de fermeture */
#block-18 {
    padding: 0 !important;
}

.mp-filters-close {
    display: none;
    position: absolute;
    top: 0;
    right: 30px;
    font-size: 45px;
    font-weight: bold;
    cursor: pointer;
    z-index: 9999999;
    color: #546942;
}

@media (max-width: 1024px) {
    .mp-filters-close {
        display: block;
    }
    
    #wpc_filters_widget-2 {
        background-color: transparent !important;
    }
}

.wpc-help-tip:hover::after, .wpc-filter-layout-dropdown .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b, .wpc-sorting-form .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b, .widget_wpc_sorting_widget .select2-container--default .select2-selection--single:hover .select2-selection__arrow b, .wpc-filter-layout-dropdown .select2-container--default .select2-selection--single:hover .select2-selection__arrow b, .wpc-filter-layout-dropdown .select2-container--default .select2-selection--single:hover, .select2-container--default.select2-container--open .wpc-filter-everything-dropdown.select2-dropdown, .wpc-sorting-form .select2-container--open .select2-selection--single:hover, .widget_wpc_sorting_widget .select2-container--open .select2-selection--single, .wpc-filter-layout-dropdown .select2-container--open .select2-selection--single, .wpc-filters-widget-content input[type=email]:focus, .wpc-filters-widget-content input[type=number]:focus, .wpc-filters-widget-content input[type=password]:focus, .wpc-filters-widget-content input[type=search]:focus, .wpc-filters-widget-content input[type=tel]:focus, .wpc-filters-widget-content input[type=text]:focus, .wpc-filters-widget-content input[type=url]:focus, .wpc-filters-widget-content input[type=email]:active, .wpc-filters-widget-content input[type=number]:active, .wpc-filters-widget-content input[type=password]:active, .wpc-filters-widget-content input[type=search]:active, .wpc-filters-widget-content input[type=tel]:active, .wpc-filters-widget-content input[type=text]:active, .wpc-filters-widget-content input[type=url]:active, .wpc-filter-collapsible .wpc-filter-title button:hover .wpc-open-icon, .wpc-filter-collapsible-reverse.wpc-filter-collapsible.wpc-closed .wpc-filter-title button:hover .wpc-open-icon, .wpc-filter-collapsible.wpc-closed .wpc-filter-title button:hover .wpc-open-icon, .wpc-filter-has-selected.wpc-closed .wpc-filter-title button:hover .wpc-open-icon {
    border-color: #7e8e70 !important;
}

@media screen and (min-width: 768px) {
    .wpc-filters-main-wrap input[type=radio]:hover, .wpc-filters-main-wrap input[type=checkbox]:hover {
        border-color: #91af61;
    }
}

.wpc-filters-main-wrap input[type=radio]:checked, .wpc-filters-main-wrap input[type=checkbox]:checked {
    border-color: #91af61 !important;
}

.wpc-filters-main-wrap input[type=checkbox]:after {
    border-color: #91af61 !important;
}

.wpc-custom-selected-terms:not(.wpc-show-on-mobile) {
    display: block !important;
}

.wpc-custom-selected-terms:not(.wpc-show-on-mobile) ul.wpc-filter-chips-list.wpc-filter-chips-2345-2.wpc-filter-chips-2345 {
    display: flex !important;
}

.woocommerce .wpc-filter-chips-list li.wpc-chip-reset-all a {
    border-color: #cc8181;
    color: #cc8181;
}

.woocommerce .wpc-filter-chips-list li.wpc-chip-reset-all a:hover {
    border-color: #da4a43 !important;
    color: white;
    background: #da4a43;
}

.woocommerce .wpc-filter-chips-list li.wpc-filter-chip:not(.wpc-chip-reset-all) a {
    border-color: #91af61;
    color: #91af61;
}

.woocommerce .wpc-filter-chips-list li.wpc-filter-chip:not(.wpc-chip-reset-all) a:hover {
    border-color: #d32c26;
    color: #d32c26;
}

.woocommerce-js .woocommerce-ordering select, .woocommerce-page .woocommerce-ordering select {
    max-width: 180px;
    background-color: transparent;
    border: 1px solid #91af61;
    border-radius: 50px;
    padding: 10px 20px !important;
}

.woocommerce .woocommerce-ordering select {
    background-position: 90% 50%;
}

@media (max-width: 1024px) {
    .woocommerce .woocommerce-result-count, .woocommerce-page .woocommerce-result-count {
        margin-right: 30px;
    }
}


/*************
* CATEGORIES *
*************/
@media (min-width: 1025px) and (max-width: 1200px) {
    .archive.tax-product_cat #primary, .archive[class*="tax-pa_"] #primary {
        margin-top: 30px !important;
    }
}

@media (min-width: 545px) and (max-width: 921px) {
    .woocommerce-shop #primary, .archive.tax-product_cat #primary, .archive[class*="tax-pa_"] #primary {
        margin-top: 0px !important;
    }
}


/************
*  PRODUIT  *
************/
.woocommerce-message, .woocommerce-info {
    outline-color: transparent !important;
}

.woocommerce .product {
    margin-top: 60px;
}

.woocommerce-product-gallery__wrapper {
    border-radius: 12px;
}

.woocommerce-product-gallery__wrapper img:hover {
    transform: scale(1.03);
}

.woocommerce-product-gallery__wrapper img {
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    transition: transform .3s ease;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    border-radius: 10px;
    border: 2px solid transparent;
    transition: .2s;
}
.woocommerce-product-gallery .flex-control-thumbs li img:hover {
    border-color: #91af61;
}

.single-product h1.product_title {
    font-size: 34px;
    font-weight: 600;
}

.single-product:has(.custom-weight-field) .quantity {
    display: none;
}

.single-product:not(:has(.custom-weight-field)) .price {
    margin-bottom: 20px !important;
}

.single-product:not(:has(.custom-weight-field)) form.cart {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

input#custom_weight {
    min-width: 80px;
    text-align: center;
}

.single_add_to_cart_button {
    border-radius: 50px !important;
    transition: .3s;
    transform: translateY(2px);
    margin-left: 0 !important;
    font-size: 18px !important;
    padding: 13px 25px 14px !important;
}

.single_add_to_cart_button:hover {
    transform: scale(0.9);
}

.woocommerce .product .woocommerce-tabs {
    max-width: 50%;
}

.woocommerce-js div.product .woocommerce-tabs ul.tabs {
    margin-bottom: 0;
}

.woocommerce-js div.product .woocommerce-tabs ul.tabs:before {
    background-color: transparent !important;
}

.woocommerce-product-attributes.shop_attributes {
    border-collapse: separate;
    border-spacing: 0 12px;
    width: 100%;
}

.single-product .woocommerce-tabs > .wc-tab > .shop_attributes {
    border-top: 0 !important;
}

.single-product .product .woocommerce-tabs .woocommerce-product-attributes th {
    padding: 14px 20px;
    background: #e9f3e1;
    color: #4b4b4b;
    font-weight: 600;
    max-width: 180px !important;
    display: table-cell;
    width: auto;
    border-radius: 10px 0 0 10px;
    border: 1px solid #dddddd !important;
    border-right: 0 !important;
    word-wrap: normal;
}

.single-product .product .woocommerce-tabs .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_conditionnement th {
    min-width: 200px;
}

.woocommerce-product-attributes td {
    padding: 14px 20px;
    background: #fff;
    border-radius: 0 10px 10px 0;
    color: #333;
    border: 1px solid #dddddd !important;
    border-left: 0 !important;
}

.woocommerce-product-attributes-item--attribute_poids-moyen th:before, .woocommerce-product-attributes-item--attribute_poids th:before {
    content: "⚖️";
    margin-right: 8px;
    font-size: 18px;
}

.woocommerce-product-attributes-item--attribute_pa_label th:before {
    content: "🏷️";
    margin-right: 8px;
    font-size: 18px;
}

.woocommerce-product-attributes-item--attribute_pr\%c3\%a9paration th:before, .woocommerce-product-attributes-item--attribute_pa_preparation th:before {
    content: "👩‍🍳";
    margin-right: 8px;
    font-size: 18px;
}

.woocommerce-product-attributes-item--attribute_pa_format th:before {
    content: "🍽️";
    margin-right: 8px;
    font-size: 18px;
}

.woocommerce-product-attributes-item--attribute_conditionnement th:before {
    content: "🥫";
    margin-right: 8px;
    font-size: 18px;
}

.single-product .woocommerce-tabs > .wc-tab > .shop_attributes a, .single-product .woocommerce-tabs .shop_attributes td {
    pointer-events: none;
    color: #7e8e70;
}

@media (max-width: 921px) {
    .woocommerce .product {
        margin-top: 20px;
    }
    
    .woocommerce .product .woocommerce-tabs, .woocommerce .product .summary.entry-summary {
        max-width: 550px;
    }
}

.woocommerce .related.products .product {
    margin-top: 20px;
}

.woocommerce-js .related.products ul.products li.product a img, .woocommerce-page ul.products li.product a img {
    border-radius: 12px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}


/***********
*  PANIER  *
***********/
.woocommerce-cart #secondary, .wc-block-components-product-badge, .wc-block-cart-item__prices .wc-block-components-product-price, .wc-block-components-product-metadata__description, .wc-block-cart__totals-title, table.wc-block-cart-items .wc-block-cart-items__header {
    display: none !important;
}

.wc-block-components-sidebar-layout .wc-block-components-main, .wc-block-components-sidebar {
    width: 100% !important;
    padding: 0 !important;
}

.woocommerce-cart .site-content .ast-container {
    justify-content: center;
}

.woocommerce-cart .wc-block-cart-item__wrap {
    display: flex;
    justify-content: space-between;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
    max-width: 100px;
}

@media (max-width: 500px) {
    .woocommerce-cart .wc-block-cart-item__wrap {
        flex-direction: column;
        flex-wrap: wrap;
        align-content: flex-start;
        margin-right: 15px;
    }
    
    .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap>*, .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap>*, table.wc-block-cart-items .wc-block-cart-items__row:not(:has(.wc-block-components-product-details__poids)) .wc-block-components-quantity-selector {
        margin-bottom: 0 !important;
    }
    
    .is-small table.wc-block-cart-items .wc-block-cart-items__row:not(:has(.wc-block-components-product-details__poids)) .wc-block-cart-item__quantity {
        margin-top: 10px;
    }
}

.woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row, .woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row, .woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row {
    border-top: 1px solid #d6dbd2;
    justify-content: space-between;
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row, .is-mobile table.wc-block-cart-items .wc-block-cart-items__row, .is-small table.wc-block-cart-items .wc-block-cart-items__row {
    grid-template-columns: 15% 55% 20% !important;
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    font-weight: bold;
}

.wc-block-cart-items__row:has(.wc-block-components-product-details__poids) .wc-block-components-quantity-selector {
    display: none !important;
}

.wc-block-cart-items__row .wc-block-cart-item__quantity {
    align-self: start !important;
}

.wc-block-cart-item__remove-link {
    margin-top: -5px !important;
}

button.mp-edit-weight-btn {
    margin-top: 6px;
    font-weight: normal;
    background: none;
    border: none;
    padding: 0 !important;
    color: inherit;
    cursor: pointer;
    text-decoration: underline;
    font-size: 12px !important;
}

button.mp-edit-weight-btn:hover {
    background: none;
    color: inherit;
    text-decoration: none;
}

.woocommerce-cart .wc-block-cart table.wc-block-cart-items, .woocommerce-cart .wc-block-cart table.wc-block-cart-items td, .woocommerce-cart .wc-block-cart table.wc-block-cart-items th {
    margin: 0;
}

.woocommerce-cart .wc-block-components-product-details.wc-block-components-product-details {
    list-style: none;
    margin: 0 0 .5em !important;
}

@media (min-width: 501px) {
    .woocommerce-cart .wc-block-components-product-details > div {
        line-height: 16px;
        margin: 0 10px;
    }
}

.woocommerce-cart .wc-block-cart__sidebar {
    margin-bottom: 0 !important;
}

.wc-block-cart__main .wc-block-cart-items {
    border-bottom: none !important;
}

.wc-block-cart .wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-item span {
    font-weight: bold;
}

.woocommerce-cart .wc-block-cart__submit {
    max-width: 220px;
    margin: 20px auto 16px;
    position: relative;
}

/* PANIER VIDE */
.wp-block-woocommerce-empty-cart-block .wp-block-separator.is-style-dots, .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new, .wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
    display: none;
}

.woocommerce-cart.woocommerce-page.woocommerce-js:has(:not(.wp-block-woocommerce-empty-cart-block)) .site-content {
    height: calc(100vh - 70px - 160px);
    align-content: center;
}

.wp-block-woocommerce-empty-cart-block {
    margin-top: 30px;
}

.wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
    margin: 45px auto 30px;
}

.wc-block-grid__products {
    background-clip: padding-box;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px 16px;
    padding: 0;
}

@media (min-width: 481px) and (max-width: 600px) {
    .wc-block-grid.has-3-columns .wc-block-grid__product {
        flex: 1 0 50%;
        margin: 0 0 24px;
        max-width: 50%;
        padding: 0;
    }
}

.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image), .wc-block-grid__product .wc-block-grid__product-title, .theme-twentytwenty .wc-block-grid.has-aligned-buttons .wc-block-grid__product>:last-child {
    margin: 0;
}

.wc-block-grid.has-aligned-buttons .wc-block-grid__product>:last-child {
    margin: 0 auto !important;
}

.wc-block-grid__product .wc-block-grid__product-image, .wc-block-grid__product .wc-block-grid__product-link {
    display: inline-block;
    position: relative;
    text-align: center;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link {
    margin-top: .5em;
    margin-bottom: .5em;
    white-space: normal;
    line-height: 12px;
    font-size: 100%;
    font-weight: 700;
    height: 48px;
}

.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title {
    font-size: 1.15em;
}

@media (max-width: 921px) {
    .wp-block-woocommerce-empty-cart-block .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link {
        height: 38px;
    }
    
    .menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button, body .wp-block-file .wp-block-file__button, .woocommerce-js a.button, .woocommerce button.button, .woocommerce .woocommerce-message a.button, .woocommerce #respond input#submit.alt, .woocommerce input.button.alt, .woocommerce input.button, .woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled], .woocommerce input.button:disabled:hover, .woocommerce input.button:disabled[disabled]:hover, .woocommerce #respond input#submit, .woocommerce button.button.alt.disabled, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link, .wc-block-grid__product-onsale, [CLASS*="wc-block"] button, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout, .woocommerce button.button.alt.disabled.wc-variation-selection-needed, [CLASS*="wc-block"] .wc-block-components-button {
        padding-top: 12px;
        padding-right: 20px;
        padding-bottom: 12px;
        padding-left: 20px;
        font-size: 16px;
        font-size: 1rem;
    }
}


/************************
*  VALIDATION COMMANDE  *
************************/
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block, .woocommerce-checkout #secondary  {
    display: none;
}

.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main {
    box-sizing: border-box;
    margin: 0;
    padding-right: 0;
    width: 100%;
}

.woocommerce-checkout .wp-block-woocommerce-checkout {
    padding-top: 0;
}

.woocommerce-checkout .page .entry-header {
    margin-bottom: 0;
}

.woocommerce-checkout .wc-block-components-checkbox label {
    font-weight: 600;
}

.woocommerce-checkout .wc-block-components-checkout-step__description {
    margin: 0 0 8px !important;
}

.woocommerce-checkout select, .woocommerce-checkout input {
    border: 1px solid hsl(90deg 11.11% 78.82% / 50%) !important;
}

.woocommerce-checkout .wc-block-components-form .wc-block-checkout__order-notes.wc-block-components-checkout-step {
    margin-bottom: 20px;
}

.woocommerce-checkout .wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
    padding-top: 0 !important;
}

@media (max-width: 600px) {
    .wc-block-components-form .wc-block-checkout__order-notes.wc-block-components-checkout-step:after {
        display: none !important;       
    }
    
    .woocommerce-checkout .wc-block-checkout__terms {
        margin-bottom: 6px;
    }
}

.wc-block-components-radio-control--highlight-checked, .wc-block-components-radio-control--highlight-checked div.wc-block-components-radio-control-accordion-option {
    font-weight: 600;
}

/* VALIDATION SUCCÈS */
.woocommerce-order-received.woocommerce-checkout #primary {
    max-width: 700px;
}

@media (min-width: 922px) {
    .woocommerce-order-received.ast-separate-container .ast-article-post, .woocommerce-order-received.ast-separate-container .ast-article-single {
        padding: 3.34em 2.4em !important;
    }

    .woocommerce-order-received .woocommerce-notice {
        margin-bottom: 30px;
    }
}

li.woocommerce-order-overview__payment-method.method {
    display: none !important;
}

li.woocommerce-order-overview__total.total {
    margin-right: 0 !important;
    border-right: none !important;
    padding-right: 0 !important;
}

.woocommerce-checkout .woocommerce-notice {
    margin: 15px 0 25px;
}

p:has(.mp-pdf-btn) {
    margin: 0;
    text-align: center;
}

.mp-pdf-btn {
    margin: 20px auto 30px !important;
}

.woocommerce-order-received.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details, .woocommerce-order-received.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details {
    display: flex;
    justify-content: space-between;
}

.woocommerce-thankyou-order-details order_details:before {
    display: none;
}

@media (max-width: 550px) {
    .woocommerce-checkout .woocommerce-notice {
        margin-bottom: 10px;
    }
    .woocommerce-order-received.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details, .woocommerce-order-received.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details {
        flex-direction: column;
    }
    
    .woocommerce-order-received.woocommerce-js ul.order_details li {
        width: 100%;
        margin-top: 10px;
        border: none !important;
    }
}

.woocommerce-checkout .wc-item-meta {
    margin-left: 0;
}

.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before {
    rotate: 90deg;
}


/***********
*  FOOTER  *
***********/
footer {
    z-index: 10;
    position: relative;
}

body:not(.ast-theme-transparent-header) .site-footer {
    box-shadow: 0px -2px 5px 0px #0000000a;
}

@media (min-width: 922px) {
    .site-footer .ast-builder-grid-row-3-equal .ast-builder-grid-row {
        grid-template-columns: 1fr 100px 1fr;
    }
}

.site-footer .site-footer-section>* {
    margin-bottom: 0 !important;
    justify-content: flex-start;
}

.site-footer-primary-section-1 {
    justify-content: left;
    width: 100%;
}

.site-footer .footer-widget-area[data-section="section-footer-menu"] {
    width: auto !important;
    margin-right: 5px;
}

.site-footer .site-footer-focus-item:has(> .ast-footer-social-1-wrap) {
    max-width: 22px;
    margin-top: -2px;
}

.site-footer .site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row, .site-primary-footer-wrap[data-section="section-primary-footer-builder"] .site-footer-section {
    justify-items: center;
}

.site-footer .site-footer-primary-section-3.site-footer-section.site-footer-section-3 {
    width: 100%;
}

.site-footer .ast-footer-copyright.site-footer-focus-item {
    margin-right: 0;
}

.site-footer .site-below-footer-wrap[data-section="section-below-footer-builder"] {
    border: none;
    box-shadow: 0 0 3px 0px #0000001c;
}

@media (min-width: 922px) and (max-width: 1240px) {
    .site-footer .site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row {
        margin-left: 20px;
        margin-right: 20px;
    }
}

@media (max-width: 921px) {
    .site-footer .site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
        padding-top: 30px;
        padding-bottom: 20px;
    }
    
    .site-footer .site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-tablet-stack .site-footer-section {
        display: flex;
        margin-bottom: 10px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    
    #astra-footer-menu .menu-item > a {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .site-footer .site-footer-focus-item:has(> .ast-footer-social-1-wrap), .site-footer .footer-widget-area[data-section="section-fb-html-1"]  {
        margin-top: 10px;
    }
    
    .site-footer .site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-tablet-stack .site-footer-section {
        margin-bottom: 0;
    }
    
    .site-footer .footer-widget-area[data-section="section-footer-menu"] {
        margin-right: 0;
    }
}

@media (max-width: 544px) {
        .site-footer .footer-widget-area[data-section="section-footer-menu"] .astra-footer-mobile-vertical-menu {
            display: flex;
            justify-content: center;
        }
}

.ast-footer-copyright p {
    line-height: 20px;
}

.grecaptcha-badge, .grecaptcha-logo {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
}