/* 
Theme Name: C'est bien fait pour toi
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: 1way
Author URI: https://www.1way.fr/
Template: hello-elementor
Version: 2.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/** BOUTONS / FORMULAIRES **/

#add-order input[type="submit"],
.swipper_menu_home .fixed a.book,
.menu_choice .menu .choose_this_menu,
.add_address,
.validate_address,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button[name="save_account_details"],
.buttonLight,
input[type="submit"].acf-button{
    background: #000;
    color: #fff;
    padding: 15px 30px;
    border-radius: 40px;
    text-decoration: none;
    border: 1px solid #000;
    cursor: pointer;
}

#add-order input[type="submit"]:hover,
.swipper_menu_home .fixed a.book:hover,
.add_address:hover,
.validate_address:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button[name="save_account_details"]:hover{
    background: #A0CBB4;
    border: 1px solid #A0CBB4;
}

.menu_choice .menu .choose_this_menu,
.buttonLight,
input[type="submit"].acf-button{
    padding: 8px 20px;
    font-size: 14px;
}

input[type="submit"].acf-button:hover{
    background: #FC9313;
    border: 1px solid #FC9313;
    color: #fff;
}

.menu_choice .menu.selected .choose_this_menu{
    background: #FC9313;
    border: 1px solid #FC9313;
}

.add_address,
.validate_address{
    display: inline-block;
    margin: 20px 0 10px;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button[name="save_account_details"]{
    margin-top: 20px;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.view,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce .subscription_details a.button,
.woocommerce table.my_account_orders td.woocommerce-orders-table__cell-order-actions p a{
    background: #000;
    color: #fff;
    padding: 5px 10px;
    border-radius: 40px;
    text-decoration: none;
    border: 1px solid #000;
    cursor: pointer;
    font-weight: normal;
    font-size: 14px;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.view:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce .subscription_details a.button:hover{
    font-size: inherit;
}

.resa_button,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce .woocommerce-form-register .woocommerce-form-register__submit,
.elementor-kit-10 button{
    background-color: #000000 !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    fill: #FFFFFF !important;
    color: #FFFFFF !important;
    border-radius: 40px 40px 40px 40px;
    transition: all 0.3s;
    border: none;
}

.resa_button:hover,
.resa_button:focus,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover,
.woocommerce .woocommerce-form-register .woocommerce-form-register__submit:hover,
.elementor-kit-10 button:hover{
    background-color: var(--e-global-color-3cc7706) !important;
    color: #FFFFFF !important;
    transition: all 0.3s;
}

.resa_button .elementor-button-content-wrapper{
    flex-direction: row-reverse;
}

.resa_button.public{
    text-decoration: none;
}

.woocommerce table.my_account_orders tr.order{
    height: 50px;
}

.woocommerce-MyAccount-navigation ul{
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.woocommerce-MyAccount-navigation ul li{
    list-style-type: none;
}

.woocommerce-MyAccount-navigation ul li a{
    text-decoration: none;
}

.woocommerce-account .woocommerce-order-details .recap_menus_wrapper .bloc_recap{
    margin-top: 0;
}

.woocommerce-account h2{
    font-size: 1.4em;
}

.resa_holding{
    display: block;
    padding: 10px 20px;
    background: #fff;
    color: var(--e-global-color-text);
    text-align: center;
    margin-bottom: 30px;
}

/** HOME **/

#big_logo_home{
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 0;
}

#wrapper_4blocs{
    position: relative;
}

#wrapper_4blocs #radis{
    position: absolute;
    transform: translateX(-64%);
    left: 50%;
}

#pasteque{
    transform: translateX(-50%);
    left: 50%;
}

.formules_wrapper{
    display: flex;
    flex-direction: column;
    margin: 200px 0 100px;
    align-items: center;
}

.formules_wrapper .choose_plan{
    text-decoration: none;
}

/** WIDGET SLIDER MENU **/

.swipper_menu_home{
    overflow: hidden;
    position: relative;
    width: 100%;
    background: #fff;
}

.swipper_menu_home .fixed{
    overflow: hidden;
    position: absolute;
    width: 100%;
    height: 100%;
}

.swipper_menu_home .fixed:before{
    content: "";
    box-shadow: 0 200px 90px 0 rgba(0, 0, 0, 0.05);
    width: 1000px;
    height: 1000px;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    right: -9%;
    z-index: 2;
    transform: translateY(-50%);
}

.swipper_menu_home .fixed a.book{
    position: absolute;
    left: 10em;
    bottom: 10%;
    z-index: 2;
}

.slider_menu_wrapper .slider_menu{
    display: flex;
    background-color: #fff;
    overflow: hidden;
    align-items: center;
    width: 100%;
    padding: 4% 0 7%;
}

.slider_menu{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slider_menu .details{
    display: flex;
    flex-direction: column;
    width: 55%;
    padding: 0 0 0 10em;
    align-items: baseline;
}

.slider_menu .details .healthy{
    background: #A0CBB4;
    padding: 5px 15px;
    border-radius: 40px;
    text-decoration: none;
    border: 1px solid #A0CBB4;
    cursor: pointer;
    color: #fff;
    margin-bottom: 10px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    transform: translateX(-1000%);
    opacity: 0;
}

.slider_menu .details h3{
    font-size: 3em;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    transform: translateY(-1000%);
    opacity: 0;
}

.slider_menu .details .slider-numbers{
    position: relative;
    margin-bottom: 60px;
}

.slider_menu .details .slider-numbers:before{
    content: "";
    box-shadow: 0 90px 90px 0 rgba(0, 0, 0, 0.1);
    width: 190px;
    height: 170px;
    border-radius: 100%;
    display: block;
    position: absolute;
    top: -120px;
    left: -70px;
}

.slider_menu .details .description{
    position: relative;
    max-width: 50%;
    line-height: 32px;
    transform: translateX(-300%);
    opacity: 0;
}

.slider_menu .details a.book{
    display: block;
    margin-top: 5em;
    background: #000;
    color: #fff;
    padding: 15px 30px;
    border-radius: 40px;
}

.slider_menu .menu_wrapper{
    position: relative;
    width: 45%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slider_menu .menu_wrapper .plate{
    max-width: 70%;
    box-shadow: 0 90px 90px 0 rgba(0, 0, 0, 0.03);
    border-radius: 50%;
    padding: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translateX(100%);
    opacity: 0;
}

.slider_menu .plate img {
    display: block;
    transform-origin: center center;
    /*transform: translateX(100%);
    opacity: 0;*/
}

.slider_menu .extras {
    display: flex;
    margin-top: 1rem;
    flex-direction: column;
    transform: translateX(-300%);
    opacity: 0;
}

.swipper_menu_home .swiper-pagination{
    bottom: 10%;
    left: 36%;
    transform: translateX(-50%);
    display: flex;
    gap: 50px;
}

.swipper_menu_home .swiper-pagination .swiper-button-prev,
.swipper_menu_home .swiper-pagination .swiper-button-next{
    position: relative;
    top: inherit;
    left: inherit;
    right: inherit;
    margin: 0;
    box-shadow: 0 10px 12px 0 rgba(0, 0, 0, 0.05);
    border-radius: 50%;
    width: 60px;
    height: 60px;
    background: #fff;
}

.swipper_menu_home .swiper-pagination .swiper-button-next:after,
.swipper_menu_home .swiper-pagination .swiper-button-prev:after{
    font-size: 20px;
    font-weight: 700;
}

/** RESERVATIONS **/

.acf-notice{
    margin-bottom: 50px;
}

body.page-template-template-resa{
    background: #FCEBD1;
}

#formules{
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 20px;
}

#formules .formule{
    display: flex;
    flex-direction: column;
    gap: 40px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    padding: 20px 30px 30px;
    margin-top: 30px;
    border: 3px solid #fff;
}

#formules .formule.selected{
    border: 3px solid var(--e-global-color-3cc7706);
}

#formules .formule .number{
    text-align: left;
    color: #000;
}

#formules .formule .number i{
    margin-right: 5px;
}

#formules .formule .price strong{
    font-size: 2.5em;
    color: #000;
    font-weight: 400;
}

#formules .formule .details{
    display: flex;
    flex-direction: column;
    font-size: 14px;
    text-align: left;
    color: #000;
    gap: 15px;
}

#formules .formule .details span i{
    color: var(--e-global-color-11d35d0);
    margin-right: 5px;
}

#formules .formule .choose_plan{
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    fill: #FFFFFF;
    color: #FFFFFF;
    background-color: var(--e-global-color-3cc7706);
    padding: 12px 24px;
    border-radius: 10px;
    text-align: center;
    transition: all 0.3s;
    cursor: pointer;
    margin-top: auto;
}

#formules .formule .choose_plan:hover{
    color: var(--e-global-color-text);
    background-color: var(--e-global-color-primary);
}

.page-template-template-resa #footer_CTA{
    display: none;
}

#add-order{
    text-align: center;
    margin: 0 auto;
}

#add-order h2{
    font-size: 2rem;
}

#add-order .acf-fields > .acf-field{
    border: none;
}

#add-order .acf-fields > .acf-field h2{
    font-size: 2rem;
}

#add-order .acf-fields > .acf-field .sous_titre{
    display: block;
    margin-top: -10px;
}

.acf-fields > .acf-field.hide_all,
.acf-fields > .acf-field.hide_label .acf-label,
.acf-field.hide_all{
    display: none;
}

#add-order .acf-range-wrap{
    display: flex;
    flex-direction: column;
}

#add-order .acf-range-wrap input[type=number]{
    margin: 50px auto 0;
    background: none;
    border: none;
    text-align: center;
    font-size: 6em;
    pointer-events: none;
}

#add-order .acf-range-wrap .acf-append{
    margin: 0;
    font-size: 2em;
    color: #000;
}

.acf-form-submit{
    margin-top: 50px;
}

.menu_choice{
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.menu_choice h2{
    margin-top: 50px;
    font-size: 2rem;
}

.menu_choice h2:first-child{
    margin-top: 0;
}

.menu_choice span.day{
    text-align: left;
    font-size: 1.2em;
    color: var(--e-global-color-text);
    font-family: var(--e-global-typography-1ff6ae8-font-family), Sans-serif;
    font-weight: var(--e-global-typography-1ff6ae8-font-weight);
    line-height: var(--e-global-typography-1ff6ae8-line-height);
    margin-bottom: -20px;
}

.menu_choice .menu{
    display: flex;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    border: 3px solid #fff;
}

.menu_choice .menu.selected{
    border: 3px solid green;
}

.menu_choice .menu .thumb{
    -webkit-background-size: cover !important;
    background-size: cover !important;
    width: 30%;
    border-radius: 10px 0 0 10px;
    position: relative;
}

.menu_choice .menu .thumb:before{
    display: block;
    position: absolute;
    --background-overlay: '';
    background-color: transparent;
    background-image: linear-gradient(180deg, #02010100 0%, #000000 100%);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    z-index: 1;
    transition: background-image 0.2s ease-in;
    opacity: 0.5;
    border-radius: 10px 0 0 10px;
}

.menu_choice .menu:hover .thumb:before{
    display: none;
    transition: background-image 0.2s ease-in;
}

.menu_choice .menu .thumb .ribbon {
    width: 150px;
    height: 150px;
    overflow: hidden;
    position: absolute;
}

.ribbon::before,
.ribbon::after {
    position: absolute;
    z-index: -1;
    content: '';
    display: block;
    border: 5px solid #6d9f84;
}

.ribbon span {
    position: absolute;
    display: block;
    width: 225px;
    padding: 7px 0;
    background-color: #7ac250;
    color: #fff;
    font: 700 18px/1 'Lato', sans-serif;
    text-shadow: 0 1px 1px rgba(0,0,0,.2);
    text-transform: uppercase;
    text-align: center;
}

.ribbon-top-left {
    top: -10px;
    left: -10px;
}
.ribbon-top-left::before,
.ribbon-top-left::after {
    border-top-color: transparent;
    border-left-color: transparent;
}
.ribbon-top-left::before {
    top: 0;
    right: 19px;
}
.ribbon-top-left::after {
    bottom: 19px;
    left: 0;
}
.ribbon-top-left span {
    right: -17px;
    top: 38px;
    transform: rotate(-45deg);
}

.menu_choice .menu h3{
    text-align: left;
    font-size: 1.4em;
    margin: 0;
}

.menu_choice .menu .details{
    width: 70%;
    padding: 20px 30px 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.menu_choice .menu .details .top{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.menu_choice .menu .details .top .allergenes{
    color: #000;
    font-size: 14px;
    cursor: pointer;
}

.menu_choice .menu .composition{
    display: flex;
    flex-direction: column;
    align-items: baseline;
    margin-bottom: 10px;
    font-size: 14px;
}

.menu_choice .menu .composition strong{
    color: #000;
}

.menu_choice .menu .actions{
    display: flex;
    gap: 30px;
    align-items: center;
    justify-content: space-between;
}

.menu_choice .menu .actions .left{
    display: flex;
    gap: 20px;
    align-items: center;
}

.menu_choice .menu .actions .right{
    display: flex;
    gap: 10px;
    align-items: center;
}

.menu_choice .menu .actions select{
    width: auto;
}

.menu_choice .menu .actions .delete{
    display: none;
    cursor: pointer;
    color: #ff0000;
    font-size: 14px;
}

.menu_choice .menu.selected .actions .delete{
    display: block;
}

.menu_choice[data-type-formule="famille"] .menu .actions .delete{
    margin-top: 30px;
}

.menu_choice[data-type-formule="famille"] .menu .actions{
    align-items: end;
}

.submit_wrapper{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bloc_recap{
    display: flex;
    flex-direction: column;
    padding: 20px 30px 30px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    margin-top: 50px;
}

.bloc_recap .top{
    display: flex;
    font-weight: 700;
    color: #000;
}

.bloc_recap .top,
.bloc_recap .menu{
    display: grid;
    grid-template-columns: 30% 20% 20% 30%; /* Configuration normale */
    grid-template-areas:
        "menu_datas date heure address";
    border-top: 1px solid #ccc;
    padding: 10px 0;
    align-items: center;
}

.bloc_recap .menu{
    font-size: 14px;
}

.bloc_recap .top{
    border: none;
}

.bloc_recap .top .title{
    text-align: left;
}

.bloc_recap .menu_datas {
    grid-area: menu_datas;
    text-align: left;
}

.bloc_recap .date {
    grid-area: date;
}

.bloc_recap .heure {
    grid-area: heure;
}

.bloc_recap .address {
    grid-area: address;
}

.bloc_recap .menu .address::first-letter {
    text-transform: uppercase;
}

.bloc_recap .menu_datas{
    display: flex;
    flex-direction: column;
}

.bloc_recap .menu_datas .title{
    font-weight: 700;
    color: #000;
}

.bloc_recap .menu_datas .composition{
    display: flex;
    flex-direction: column;
    font-size: 14px;
}

.bloc_recap .top .date,
.bloc_recap .menu .date,
.bloc_recap .top .heure,
.bloc_recap .menu .heure{

    text-align: center;
}

.bloc_recap.total .top,
.bloc_recap.total .menu{
    display: flex;
    justify-content: space-between;
}

.bloc_recap.total .top .date,
.bloc_recap.total .menu .date,
.bloc_recap.total .top .heure,
.bloc_recap.total .menu .heure{

    text-align: center;
}

.bloc_recap.total .title{
    width: 60%;
    text-align: left;
}

.bloc_recap.total .date{
    text-align: center;
    width: 20%;
}

.bloc_recap .edit_address{
    font-size: 14px;
    color: #000;
    cursor: pointer;
}

.bloc_recap .menu.total{
    font-weight: 700;
}

.details_abonnement{
    display: flex;
    flex-direction: column;
    margin-top: 50px;
}

.top_form_info{
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 20px 30px 20px;
    border-radius: 10px;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    margin: 50px 0;
    text-align: left;
}

.top_form_info p{
    margin: 0;
}

.top_form_info p i{
    width: 20px;
    text-align: center;
    margin-right: 5px;
    color: #000;
}

.popup_address,
.allergenes-popup,
.macro-popup{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(252, 235, 209, 0.8);
    z-index: 99999999;
    justify-content: center;
    align-items: center;
    display: none;
}

body.displayPopupAddress,
body.displayPopupAllerg,
body.displayPopupMacro{
    overflow-y: hidden;
}

body.displayPopupAddress .popup_address,
body.displayPopupAllerg .allergenes-popup,
body.displayPopupMacro .macro-popup{
    display: flex;
}

.popup_address_wrapper,
.allergenes-popup_wrapper,
.macro-popup_wrapper{
    background: #fff;
    width: 60%;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    text-align: center;
}

.popup_address_wrapper{
    position: relative;
    padding-top: 60px;
}

.allergenes-popup_wrapper,
.macro-popup_wrapper{
    display: flex;
    flex-direction: column;
    position: relative;
    gap: 20px;
}

.allergenes-popup_wrapper .title,
.macro-popup_wrapper .title{
    color: #222;
    font-family: "Josefin Sans", Sans-serif;
    font-weight: 800;
    font-size: 1.4em;
}

.close_popup_allerg,
.close_popup_macro,
.close_popup_address{
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
}

.close_popup_allerg i,
.close_popup_macro i,
.close_popup_address i{
    padding: 20px;
    font-size: 20px;
}

.popup_address_wrapper input{
    margin-bottom: 20px;
}

ul.liste_ville{
    list-style-type: none;
    text-align: left;
    margin: 0;
    max-height: 40vh;
    overflow: scroll;
}

#error-message{
    display: none;
    background: #ff0000;
    padding: 10px 0;
    color: #fff;
    font-weight: 700;
    text-align: center;
}

.spinner {
    display: none;
    margin-right: 10px;
    vertical-align: middle;
}

.spinner img{
    width: 25px;
    height: auto;
}

.custom-quantity {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-family: Arial, sans-serif;
    margin-top: 10px;
}

.choose_menu_pack .title{
    font-size: 14px;
}

.btn-quantity {
    cursor: pointer;
    font-size: 18px;
    color: #333;
    width: 35px;
    height: 35px;
    padding: 0;
}

.quantity-display {
    display: inline-block;
    min-width: 40px;
    text-align: center;
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 5px 10px;
}

/** WOOCOMMERCE **/

.wc-block-components-address-form__address_2-toggle,
.wc-block-components-panel__button[aria-expanded=true],
.wc-block-components-totals-coupon .wc-block-components-panel__button,
.wcs-recurring-totals-panel__details .wc-block-components-panel__button{
    background-color: inherit !important;
}

.wc-block-components-form .wc-block-components-text-input input[type=email],
.wc-block-components-form .wc-block-components-text-input input[type=number],
.wc-block-components-form .wc-block-components-text-input input[type=password],
.wc-block-components-form .wc-block-components-text-input input[type=tel],
.wc-block-components-form .wc-block-components-text-input input[type=text],
.wc-block-components-form .wc-block-components-text-input input[type=url],
.wc-blocks-components-select .wc-blocks-components-select__container,
.wc-block-components-text-input input[type=email], .wc-block-components-text-input input[type=number],
.wc-block-components-text-input input[type=password], .wc-block-components-text-input input[type=tel],
.wc-block-components-text-input input[type=text], .wc-block-components-text-input input[type=url],
.is-large .wp-block-woocommerce-checkout-order-summary-block{
    border: none !important;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
}

.is-large .wp-block-woocommerce-checkout-order-summary-block{
    background: #fff;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
    font-size: 1em !important;
    color: #000;
}

.is-large .wc-block-checkout__sidebar {
    top: 125px !important;
}

/** CHECKOUT **/

.woocommerce-checkout #footer_CTA{
    display: none;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message{
    background-color: #fff;
    border-top: 3px solid var(--e-global-color-3cc7706);
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
}

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register{
    border: 1px solid var(--e-global-color-3cc7706);
}

.woocommerce-info::before {
    color: var(--e-global-color-3cc7706);
}

.checkout #customer_details h3,
h3#order_review_heading{
    font-size: 2rem;
}

.woocommerce form .form-row label,
.woocommerce-page form .form-row label{
    font-family: inherit;
    font-weight: normal;
    font-size: 16px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{
    border: none;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
}

.select2-container--default .select2-selection--single{
    border: none;
    padding: 0.5rem 1rem;
    height: auto;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
    top: 9px;
    right: 9px;
}

.englobe_checkout{
    display: flex;
    gap: 50px;
}

.woocommerce-account .woocommerce .col2-set,
.woocommerce-account.woocommerce-page .col2-set{
    width: 100%;
}

.woocommerce-account .woocommerce .col2-set .col-1,
.woocommerce-page.woocommerce-account .col2-set .col-2{
    width: 48%;
}

.woocommerce-account.woocommerce-page .col2-set .col-2{
    margin: 0;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-2{
    width: 100%;
}

.woocommerce-page .col2-set .col-2{
    margin-top: 50px;
}

.woocommerce .col2-set,
.woocommerce-page .col2-set,
#order_review{
    width: 50%;
}

.woocommerce table.shop_table{
    background: #fff;
    border: none;
    padding: 20px;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce table thead:first-child tr:first-child th{
    border: none;
}

.woocommerce table thead:first-child tr:first-child th{
    border-bottom: 1px solid;
    color: #000;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment{
    background: var(--e-global-color-3cc7706);
}

.woocommerce-privacy-policy-text,
.woocommerce-privacy-policy-text a{
    color: #fff;
}

.woocommerce form.register .woocommerce-privacy-policy-text,
.woocommerce form.register .woocommerce-privacy-policy-text a{
    color: inherit;
}

form input:-internal-autofill-selected{
    background-color: #fff !important;
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods{
    border-bottom: 5px solid var(--e-global-color-f624c55);
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box{
    background-color: #fff;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before{
    border: 1em solid #fff;
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
}

table tbody > tr:nth-child(odd) > td, table tbody > tr:nth-child(odd) > th{
    background-color: inherit;
}

/** THANK YOU **/

.woocommerce-order-received .woocommerce-order h2{
    font-size: 1.4rem;
}

.woocommerce-order-received .woocommerce-order h3{
    font-size: 1rem;
}

.woocommerce-order-received .woocommerce-order-details h2{
    margin-top: 50px;
    margin-bottom: 10px !important;
}

.woocommerce-order-received .woocommerce-order-details{
    margin-bottom: 50px;
}

.woocommerce-thankyou-order-received{
    font-weight: 800;
    color: #222;
    font-family: "Josefin Sans";
    font-size: 2rem;
    text-align: center;
}

.woocommerce-order-received ul.order_details{
    margin: 0;
    display: flex;
    background: #fff;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    border-radius: 5px;
    padding: 20px;
    justify-content: center;
}

.woocommerce-order-received ul.order_details li{
    float: inherit;
    text-align: center;
}

.woocommerce-order-received .woocommerce-bacs-bank-details{
    margin-top: 50px;
}

.woocommerce .woocommerce-customer-details address{
    border: none;
    background: #fff;
    box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.05);
    padding: 20px;
}

/** ACCOUNT USER **/

li.woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--downloads{
    display: none;
}

.woocommerce-MyAccount-content h2{
    font-size: 1.4rem;
    margin-top: 50px;
}

.woocommerce table.my_account_orders{
    margin-bottom: 50px;
}

.woocommerce-account .addresses .title .edit{
    float: left;
}

.woocommerce table.my_account_orders td, .woocommerce table.my_account_orders th{
    padding: 10px;
}

.woocommerce table.my_account_orders td.woocommerce-orders-table__cell-order-actions p{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.woocommerce table.my_account_orders td.woocommerce-orders-table__cell-order-actions p a{
    text-align: center;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
}

/** FAQ **/

.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{
    padding: 20px;
    background: #FCEBD1;
    margin-right: 20px !important;
    width: inherit;
}

.elementor-accordion .elementor-tab-content,
.elementor-accordion .elementor-accordion-item{
    border: none;
}

.elementor-accordion .elementor-tab-title{
    padding: 0;
    display: flex;
    align-items: center;
    background: #f3f3f3;
}

.elementor-accordion .elementor-accordion-item{
    margin-bottom: 10px;
}

/** PANIER **/

:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce p.return-to-shop a.button.wc-backward{
    display: none;
}

@keyframes rotateImage {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg); /* Rotation à 180° à la moitié de l'animation */
    }
}

@media only screen and (max-width: 1280px)  {

    /** HOME **/

    .slider_menu_wrapper .slider_menu{
        padding: 15% 0;
    }

    .swipper_menu_home .fixed:before{
        right: -22%;
    }

    .swipper_menu_home .fixed a.book{
        left: 5em;
    }

    .slider_menu .details{
        width: 55%;
        padding: 0 0 0 2em;
    }

    .slider_menu .details .description{
        width: 80%;
    }

    .slider_menu .menu_wrapper{
        width: 35%;
    }

    .slider_menu .menu_wrapper .plate{
        max-width: 100%;
    }

    .swipper_menu_home .swiper-pagination{
        left: 43%;
    }

    /** FORMULES **/

    #formules{
        grid-template-columns: repeat(2,1fr);
    }

}

@media only screen and (max-width: 1024px)  {

    /** HOME **/

    .swipper_menu_home .fixed:before {
        right: -20%;
        height: 800px;
        width: 800px;
    }

    .slider_menu .details{
        width: 50%;
        padding: 0;
    }

    .slider_menu .details .description{
        max-width: 100%;
    }

    .swipper_menu_home .swiper-pagination{
        left: inherit;
        right: 0;
    }

    .swipper_menu_home .fixed a.book{
        left: 4em;
    }

    /** STEP 1 **/

    body.step2 #add-order{
        max-width: 80%;
    }


}

@media only screen and (max-width: 968px)  {

    /** STEP 1 **/

    body.step3 #add-order,
    body.step4 #add-order{
        max-width: 100%;
    }

    #formules{
        flex-direction: column;
    }

    #formules .formule{
        gap: 20px;
    }

    /** STEP 2 **/

    .menu_choice .menu .actions{
        flex-direction: column-reverse;
        align-items: baseline;
        gap: 10px;
    }

    /** STEP 3 **/



}

@media only screen and (max-width: 868px){

    /** HOME **/

    .swipper_menu_home .fixed:before {
        right: -30%;
    }

}

@media only screen and (max-width: 768px)  {

    #add-order h2{
        font-size: 1.4em;
    }

    /** HOME **/

    .swipper_menu_home .fixed a.book {
        left: 3em;
    }

    .swipper_menu_home .fixed:before {
        right: -35%;
        height: 700px;
        width: 700px;
    }

    .slider_menu_wrapper .slider_menu {
        padding: 22% 0;
    }

    .swipper_menu_home .swiper-pagination{
        right: 1%;
    }

    .slider_menu .details h3{
        font-size: 2em;
    }

    /** STEP 1 **/

    body.step2 #add-order{
        max-width: 100%;
    }

    /** STEP 2 **/

    .menu_choice .menu .thumb{
        width: 45%;
    }

    .menu_choice .menu .details{
        width: 55%;
    }

    .menu_choice .menu .details .top{
        flex-direction: column;
        align-items: baseline;
    }

    .menu_choice .menu .composition{
        text-align: left;
    }

    /** STEP 3 **/

    .bloc_recap .top{
        grid-template-columns: 1.2fr 0.8fr;
        grid-template-areas:
            "title address";
    }

    .bloc_recap .top .date,
    .bloc_recap .top .heure{
        display: none;
    }

    .bloc_recap .top .title{
        grid-area: title;
    }

    .bloc_recap .top .address{
        grid-area: address;
    }

    .bloc_recap .menu:nth-of-type(1),
    .bloc_recap .menu:nth-child(1),
    .bloc_recap > .menu:first-of-type{
        border: none !important;
    }

    .bloc_recap .menu {
        grid-template-columns: 1.2fr 0.8fr;
        grid-template-rows: auto auto;
        grid-template-areas:
            "menu_datas address"
            "date address"
            "heure address";
        font-size: 14px;
    }

    .bloc_recap .menu .date,
    .bloc_recap .menu .heure{
        text-align: left;
    }

    .bloc_recap .address {
        grid-area: address;
    }

    .bloc_recap.total .top .date{
        display: block;
    }



}

@media only screen and (max-width: 650px){

    /** STEP 2 **/

    .menu_choice .menu .actions .right{
        flex-direction: column;
        align-items: baseline;
    }

}

@media only screen and (max-width: 600px){

    .bloc_recap:not(.total) .top .address,
    .slider_menu .menu_wrapper{
        display: none;
    }

    /** HOME **/

    .slider_menu .details {
        width: 80%;
    }

    .slider_menu_wrapper .slider_menu {
        padding: 25% 0 40%;
    }

    .slider_menu .details .description{
        width: 100%;
    }

    .swipper_menu_home .fixed a.book {
        left: 50%;
        bottom: 30px;
        transform: translateX(-50%);
        width: 80%;
        text-align: center;
    }

    .swipper_menu_home .swiper-pagination {
        right: inherit;
        left: 50%;
        transform: translateX(-50%);
        bottom: 19%;
        gap: 25px;
    }

    .swipper_menu_home .swiper-pagination .swiper-button-prev,
    .swipper_menu_home .swiper-pagination .swiper-button-next{
        left: auto;
        right: auto;
    }

    .swipper_menu_home .swiper-pagination .swiper-button-prev,
    .swipper_menu_home .swiper-pagination .swiper-button-next{
        width: 50px;
        height: 50px;
    }

    .swipper_menu_home .swiper-pagination .swiper-button-next:after,
    .swipper_menu_home .swiper-pagination .swiper-button-prev:after {
        font-size: 15px;
    }

    /** STEP 3 **/

    .bloc_recap .menu {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
        grid-template-areas:
            "menu_datas"
            "date"
            "heure"
            "address";
    }

    .bloc_recap .menu .date,
    .bloc_recap .menu .heure{
        text-align: left;
    }

    .bloc_recap .menu .date{
        margin-top: 10px;
    }

    .bloc_recap .menu .address {
        grid-area: address;
        text-align: left;
        margin-top: 10px;
    }

    /** FORMULES **/

    #formules{
        grid-template-columns: repeat(1,1fr);
        gap: 0;
    }
}

@media only screen and (max-width: 480px){

    /** STEP 2 **/

    .menu_choice .menu{
        flex-direction: column;
    }

    .menu_choice .menu .thumb {
        height: 15vh;
        width: 100%;
        border-radius: 10px 10px 0 0;
    }

    .menu_choice .menu .thumb:before{
        border-radius: 10px 10px 0 0;
    }

    .menu_choice .menu .details{
        width: 100%;
        padding: 25px 20px 20px;
    }

}