/* =========================================================
   JUDEBOX - CSS
   Sections:
   1) Titre du site
   2) Menu principal / sous-menu
   3) Accueil
   4) Réservation / produit
   5) Panier
   6) Checkout
   7) Responsive
   ========================================================= */
/* ===== TITRE DU SITE PERSONNALISÉ ===== */

.ast-header-html-1 .ast-site-title-wrap {
    line-height: 1 !important;
}

.ast-header-html-1 .site-title {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ast-header-html-1 .judebox-site-title {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 5rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
}

/* Gris argenté plus pâle */
.ast-header-html-1 .titre-jude,
.ast-header-html-1 .titre-experience {
    color: #D7DBE0 !important;
}

/* Doré */
.ast-header-html-1 .titre-box {
    color: #C8A455 !important;
}

/* Espace seulement avant Expérience */
.ast-header-html-1 .titre-experience {
    margin-left: 0.18em !important;
}

/* Hover léger */
.ast-header-html-1 .judebox-site-title:hover .titre-jude,
.ast-header-html-1 .judebox-site-title:hover .titre-experience {
    color: #EEF1F4 !important;
}

.ast-header-html-1 .judebox-site-title:hover .titre-box {
    color: #E3C16F !important;
}

/* Tablette */
@media (max-width: 1024px) {
    .ast-header-html-1 .judebox-site-title {
        font-size: 1.6rem !important;
    }

    .ast-header-html-1 .titre-experience {
        margin-left: 0.14em !important;
    }
}

/* Cellulaire */
@media (max-width: 767px) {
    .ast-header-html-1 .judebox-site-title {
        font-size: 1.25rem !important;
    }

    .ast-header-html-1 .titre-experience {
        margin-left: 0.12em !important;
    }
}

/* ===== 2) SOUS-MENU PRINCIPAL - VERSION FINALE SOBRE ===== */

/* Desktop */
.main-header-menu .sub-menu,
.ast-desktop .main-header-menu .sub-menu {
    background: rgba(10, 10, 10, 0.96) !important;
    border: 1px solid rgba(200, 164, 85, 0.22) !important;
    border-radius: 6px !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.24) !important;
    padding: 8px 0 !important;
    min-width: 280px !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* Liens du sous-menu */
.main-header-menu .sub-menu .menu-item > a,
.ast-desktop .main-header-menu .sub-menu .menu-item > a {
    color: #f2eee7 !important;
    background: transparent !important;
    padding: 12px 18px !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
    border-radius: 0 !important;
    transition: color 0.2s ease, padding-left 0.2s ease, background-color 0.2s ease;
}

/* Hover desktop très discret */
.main-header-menu .sub-menu .menu-item > a:hover,
.main-header-menu .sub-menu .menu-item > a:focus,
.ast-desktop .main-header-menu .sub-menu .menu-item > a:hover,
.ast-desktop .main-header-menu .sub-menu .menu-item > a:focus {
    background: rgba(200, 164, 85, 0.04) !important;
    color: #dec06f !important;
    padding-left: 22px !important;
}

/* Élément actif dans le sous-menu : texte seulement, sans boîte */
.main-header-menu .sub-menu .current-menu-item > a,
.main-header-menu .sub-menu .current-menu-ancestor > a,
.ast-desktop .main-header-menu .sub-menu .current-menu-item > a,
.ast-desktop .main-header-menu .sub-menu .current-menu-ancestor > a {
    background: transparent !important;
    color: #d8b45c !important;
    padding-left: 18px !important;
}

/* Légère séparation */
.main-header-menu .sub-menu .menu-item + .menu-item > a,
.ast-desktop .main-header-menu .sub-menu .menu-item + .menu-item > a {
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

/* Élément parent du menu principal */
.main-header-menu > .menu-item > a,
.ast-desktop .main-header-menu > .menu-item > a {
    transition: color 0.2s ease, background-color 0.2s ease;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Hover/focus normal des items parents */
.main-header-menu > .menu-item:hover > a,
.main-header-menu > .menu-item:focus-within > a,
.ast-desktop .main-header-menu > .menu-item:hover > a,
.ast-desktop .main-header-menu > .menu-item:focus-within > a {
    color: #e3c16f !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Vrais liens actifs top-level (ex.: Accueil) */
.main-header-menu > .current-menu-item:not(.menu-item-has-children) > a,
.main-header-menu > .current_page_item:not(.menu-item-has-children) > a,
.ast-desktop .main-header-menu > .current-menu-item:not(.menu-item-has-children) > a,
.ast-desktop .main-header-menu > .current_page_item:not(.menu-item-has-children) > a {
    color: #d6b25a !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Parent avec sous-menu : PAS actif en permanence */
.main-header-menu > .menu-item-has-children.current-menu-item > a,
.main-header-menu > .menu-item-has-children.current-menu-ancestor > a,
.main-header-menu > .menu-item-has-children.current_page_item > a,
.main-header-menu > .menu-item-has-children.current-page-ancestor > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-menu-item > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-menu-ancestor > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current_page_item > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-page-ancestor > a {
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Parent avec sous-menu : allumé seulement quand ouvert / hover / focus */
.main-header-menu > .menu-item-has-children:hover > a,
.main-header-menu > .menu-item-has-children:focus-within > a,
.ast-desktop .main-header-menu > .menu-item-has-children:hover > a,
.ast-desktop .main-header-menu > .menu-item-has-children:focus-within > a {
    color: #e3c16f !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Flèche */
.main-header-menu .menu-item-has-children > a .ast-icon.icon-arrow svg,
.main-header-menu .menu-item-has-children > a .dropdown-menu-toggle .ast-icon svg {
    fill: currentColor !important;
}

/* Mobile */
.ast-mobile-popup-drawer .menu-item .sub-menu,
.ast-header-break-point .main-header-menu .sub-menu {
    background: rgba(10, 10, 10, 0.96) !important;
    border-left: 1px solid rgba(200, 164, 85, 0.30) !important;
    border-radius: 0 !important;
    padding: 4px 0 !important;
}

.ast-mobile-popup-drawer .menu-item .sub-menu a,
.ast-header-break-point .main-header-menu .sub-menu a {
    color: #f2eee7 !important;
    background: transparent !important;
    padding: 11px 16px !important;
    font-weight: 600 !important;
}

.ast-mobile-popup-drawer .menu-item .sub-menu a:hover,
.ast-mobile-popup-drawer .menu-item .sub-menu a:focus,
.ast-header-break-point .main-header-menu .sub-menu a:hover,
.ast-header-break-point .main-header-menu .sub-menu a:focus {
    color: #dec06f !important;
    background: rgba(200, 164, 85, 0.05) !important;
}

/* Actif mobile sans gros fond */
.ast-mobile-popup-drawer .menu-item .sub-menu .current-menu-item > a,
.ast-mobile-popup-drawer .menu-item .sub-menu .current-menu-ancestor > a,
.ast-header-break-point .main-header-menu .sub-menu .current-menu-item > a,
.ast-header-break-point .main-header-menu .sub-menu .current-menu-ancestor > a {
    background: transparent !important;
    color: #d8b45c !important;
}

/* ===== 3) ACCUEIL ===== */

.fond-blanc-judebox {
    background: rgba(235, 245, 255, 0.30) !important;
    padding: 20px;
    border-radius: 12px;
}

.fond-blanc-judebox-transparent {
    background: rgba(235, 245, 255, 0.20) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding: 20px;
    border-radius: 12px;
}

#whyus .wp-block-columns > .wp-block-column {
    background: rgba(235, 245, 255, 0.85) !important;
    padding: 20px;
    border-radius: 12px;
    box-sizing: border-box;
}

#reply-title {
    color: #eef6ff !important;
}

/* ===== 4) PAGE RÉSERVATION / PRODUIT ===== */

body.postid-252.single-product .site-content,
body.postid-252.single-product .ast-container,
body.postid-252.single-product .site-main,
body.postid-252.single-product .entry-content,
body.postid-252.single-product .product {
    background: transparent !important;
}

body.postid-252.single-product .product.type-product {
    background: rgba(235, 245, 255, 0.88) !important;
    border-radius: 18px;
    padding: 28px !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
    box-sizing: border-box;
}

body.postid-252.single-product .product_title,
body.postid-252.single-product .woocommerce-product-details__short-description,
body.postid-252.single-product .product p,
body.postid-252.single-product .product label,
body.postid-252.single-product .product .price,
body.postid-252.single-product .product .woocommerce-Price-amount,
body.postid-252.single-product .product .wc-bookings-booking-form label,
body.postid-252.single-product .product .wc-bookings-booking-form legend {
    color: #102133 !important;
}

body.postid-252.single-product .product input,
body.postid-252.single-product .product select,
body.postid-252.single-product .product textarea {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #102133 !important;
    border: 1px solid rgba(16, 33, 51, 0.18) !important;
    border-radius: 10px !important;
}

body.postid-252.single-product .single_add_to_cart_button,
body.postid-252.single-product .product .button,
body.postid-252.single-product .product button {
    background: #163a59 !important;
    color: #eef6ff !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 12px 18px !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
}

body.postid-252.single-product .single_add_to_cart_button:hover,
body.postid-252.single-product .product .button:hover,
body.postid-252.single-product .product button:hover {
    background: #224d73 !important;
    color: #ffffff !important;
}

/* ===== BLOC PAIEMENT PRODUIT ===== */

.ast-single-product-payments.ast-inherit-color-version {
    background: #000000 !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 12px !important;
    padding: 20px 16px 16px 16px !important;
    color: #eef6ff !important;
}

.ast-single-product-payments.ast-inherit-color-version legend {
    color: #eef6ff !important;
    background: rgba(22, 58, 89, 0.96) !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    padding: 7px 14px !important;
    border-radius: 10px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    margin-left: 8px !important;
}

/* ===== BOUTON RÉSERVER ===== */

button.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
    background: #c87412 !important;
    color: #ffffff !important;
    border: 1px solid #c97c15 !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.16);
}

button.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt:hover {
    background: #e79a2f !important;
    color: #ffffff !important;
    border-color: #d98a1f !important;
}

button.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt.disabled,
button.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt:disabled {
    background: #d98a1f !important;
    color: #ffffff !important;
    opacity: 1 !important;
}

body.postid-252.single-product form.cart,
body.postid-252.single-product .wc-bookings-booking-form {
    text-align: center !important;
}

body.postid-252.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
    float: none !important;
    display: inline-block !important;
    width: auto !important;
    min-width: 320px !important;
    padding: 20px 44px !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin: 20px auto 20px auto !important;
}

/* ===== MESSAGE CONTACT ===== */

textarea#contact-form-comment-g252-message,
textarea[name="g252-message"],
#contact-form-comment-g252-message {
    min-height: 120px !important;
    height: 120px !important;
    max-height: 120px !important;
}

/* ===== DATE PICKER RÉSERVATION ===== */

body.postid-252.single-product #wc-bookings-booking-form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.postid-252.single-product #wc-bookings-booking-form .wc_bookings_field_start_date,
body.postid-252.single-product #wc-bookings-booking-form .wc-bookings-date-picker,
body.postid-252.single-product #wc-bookings-booking-form .picker,
body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker-inline,
body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker,
body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker-calendar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    box-sizing: border-box !important;
}

body.postid-252.single-product #wc-bookings-booking-form .wc-bookings-date-picker {
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
}

body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td,
body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker th {
    text-align: center !important;
}

body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td a,
body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td span {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* ===== 5) PANIER WOO ===== */

body.page-id-40.woocommerce-cart .site .entry-content,
body.page-id-40.woocommerce-cart .site .site-main,
body.page-id-40.woocommerce-cart .site .ast-container {
    background: transparent !important;
}

body.page-id-40.woocommerce-cart .site .woocommerce,
body.page-id-40.woocommerce-cart .site .wc-block-cart,
body.page-id-40.woocommerce-cart .site .wp-block-woocommerce-cart {
    background: rgba(235, 245, 255, 0.92) !important;
    border-radius: 20px !important;
    padding: 30px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
}

body.page-id-40.woocommerce-cart .site .woocommerce-cart-form,
body.page-id-40.woocommerce-cart .site .cart-collaterals,
body.page-id-40.woocommerce-cart .site .cart_totals,
body.page-id-40.woocommerce-cart .site table.shop_table,
body.page-id-40.woocommerce-cart .site table.shop_table th,
body.page-id-40.woocommerce-cart .site table.shop_table td {
    background: rgba(255, 255, 255, 0.78) !important;
    color: #102133 !important;
}

body.page-id-40.woocommerce-cart .site table.shop_table th,
body.page-id-40.woocommerce-cart .site table.shop_table td {
    padding: 14px 18px !important;
}

body.page-id-40.woocommerce-cart .site .cart_totals table th,
body.page-id-40.woocommerce-cart .site .cart_totals table td,
body.page-id-40.woocommerce-cart .site .shop_table_responsive tr td,
body.page-id-40.woocommerce-cart .site .shop_table_responsive tr th {
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-id-40.woocommerce-cart .site .wc-block-cart-items,
body.page-id-40.woocommerce-cart .site .wc-block-cart__totals-title,
body.page-id-40.woocommerce-cart .site .wc-block-cart__submit,
body.page-id-40.woocommerce-cart .site .wc-block-components-totals-wrapper,
body.page-id-40.woocommerce-cart .site .wc-block-components-sidebar,
body.page-id-40.woocommerce-cart .site .wc-block-components-main,
body.page-id-40.woocommerce-cart .site .wc-block-components-totals-item,
body.page-id-40.woocommerce-cart .site .wc-block-cart-item,
body.page-id-40.woocommerce-cart .site .wc-block-components-product-name,
body.page-id-40.woocommerce-cart .site .wc-block-components-panel {
    background: rgba(255, 255, 255, 0.78) !important;
    color: #102133 !important;
    border-radius: 16px !important;
}

body.page-id-40.woocommerce-cart .site .wc-block-components-totals-item,
body.page-id-40.woocommerce-cart .site .wc-block-cart-item,
body.page-id-40.woocommerce-cart .site .wc-block-components-sidebar-layout .wc-block-components-main,
body.page-id-40.woocommerce-cart .site .wc-block-components-sidebar {
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-id-40.woocommerce-cart .site h1,
body.page-id-40.woocommerce-cart .site h2,
body.page-id-40.woocommerce-cart .site h3,
body.page-id-40.woocommerce-cart .site p,
body.page-id-40.woocommerce-cart .site label,
body.page-id-40.woocommerce-cart .site span,
body.page-id-40.woocommerce-cart .site a,
body.page-id-40.woocommerce-cart .site th,
body.page-id-40.woocommerce-cart .site td,
body.page-id-40.woocommerce-cart .site li,
body.page-id-40.woocommerce-cart .site strong,
body.page-id-40.woocommerce-cart .site em,
body.page-id-40.woocommerce-cart .site .wc-block-components-product-name,
body.page-id-40.woocommerce-cart .site .wc-block-components-totals-item__label,
body.page-id-40.woocommerce-cart .site .wc-block-components-totals-item__value,
body.page-id-40.woocommerce-cart .site .wc-block-formatted-money-amount,
body.page-id-40.woocommerce-cart .site .wc-block-components-radio-control__label,
body.page-id-40.woocommerce-cart .site .wc-block-components-checkout-step__heading {
    color: #102133 !important;
}

body.page-id-40.woocommerce-cart .site input,
body.page-id-40.woocommerce-cart .site select,
body.page-id-40.woocommerce-cart .site textarea {
    background: rgba(255, 255, 255, 0.96) !important;
    color: #102133 !important;
    border: 1px solid rgba(16, 33, 51, 0.18) !important;
    border-radius: 10px !important;
}

body.page-id-40.woocommerce-cart .site .button,
body.page-id-40.woocommerce-cart .site button,
body.page-id-40.woocommerce-cart .site input.button {
    background: #163a59 !important;
    color: #eef6ff !important;
    border: none !important;
    border-radius: 10px !important;
}

body.page-id-40.woocommerce-cart .site .wc-proceed-to-checkout a.checkout-button,
body.page-id-40.woocommerce-cart .site .wc-block-cart__submit-button,
body.page-id-40.woocommerce-cart .site .wc-block-components-button {
    background: #c87412 !important;
    color: #ffffff !important;
    border: 1px solid #c97c15 !important;
    border-radius: 10px !important;
}

body.page-id-40.woocommerce-cart .site .wc-proceed-to-checkout a.checkout-button:hover,
body.page-id-40.woocommerce-cart .site .wc-block-cart__submit-button:hover,
body.page-id-40.woocommerce-cart .site .wc-block-components-button:hover {
    background: #e79a2f !important;
    color: #ffffff !important;
}

body.page-id-40.woocommerce-cart .site .entry-title {
    color: #eef6ff !important;
}

/* ===== 6) CHECKOUT BLOCK WOO ===== */

body.page-id-41.woocommerce-checkout .site .entry-content,
body.page-id-41.woocommerce-checkout .site .site-main,
body.page-id-41.woocommerce-checkout .site .ast-container {
    background: transparent !important;
}

body.page-id-41.woocommerce-checkout .site .wp-block-woocommerce-checkout,
body.page-id-41.woocommerce-checkout .site .wc-block-checkout,
body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar-layout,
body.page-id-41.woocommerce-checkout .site .wc-block-checkout__main,
body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar,
body.page-id-41.woocommerce-checkout .site .wc-block-components-totals-wrapper,
body.page-id-41.woocommerce-checkout .site .wc-block-components-order-summary,
body.page-id-41.woocommerce-checkout .site .wc-block-checkout__actions_row,
body.page-id-41.woocommerce-checkout .site .wc-block-components-checkout-step,
body.page-id-41.woocommerce-checkout .site .wc-block-components-panel {
    background: rgba(235, 245, 255, 0.92) !important;
    color: #102133 !important;
    border-radius: 20px !important;
    padding: 24px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
}

body.page-id-41.woocommerce-checkout .site .wc-block-components-main,
body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar {
    gap: 18px !important;
}

body.page-id-41.woocommerce-checkout .site h1,
body.page-id-41.woocommerce-checkout .site h2,
body.page-id-41.woocommerce-checkout .site h3,
body.page-id-41.woocommerce-checkout .site p,
body.page-id-41.woocommerce-checkout .site label,
body.page-id-41.woocommerce-checkout .site span,
body.page-id-41.woocommerce-checkout .site a,
body.page-id-41.woocommerce-checkout .site li,
body.page-id-41.woocommerce-checkout .site strong,
body.page-id-41.woocommerce-checkout .site th,
body.page-id-41.woocommerce-checkout .site td {
    color: #102133 !important;
}

body.page-id-41.woocommerce-checkout .site input,
body.page-id-41.woocommerce-checkout .site select,
body.page-id-41.woocommerce-checkout .site textarea {
    background: rgba(255, 255, 255, 0.96) !important;
    color: #102133 !important;
    border: 1px solid rgba(16, 33, 51, 0.18) !important;
    border-radius: 10px !important;
}

body.page-id-41.woocommerce-checkout .site .wc-block-components-text-input,
body.page-id-41.woocommerce-checkout .site .wc-blocks-components-select,
body.page-id-41.woocommerce-checkout .site .wc-block-components-address-card,
body.page-id-41.woocommerce-checkout .site .wc-block-components-checkbox,
body.page-id-41.woocommerce-checkout .site .wc-block-components-radio-control {
    color: #102133 !important;
}

body.page-id-41.woocommerce-checkout .site .wc-block-components-button,
body.page-id-41.woocommerce-checkout .site button,
body.page-id-41.woocommerce-checkout .site .button,
body.page-id-41.woocommerce-checkout .site #place_order {
    background: #c87412 !important;
    color: #ffffff !important;
    border: 1px solid #c97c15 !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.16) !important;
}

body.page-id-41.woocommerce-checkout .site .wc-block-components-button:hover,
body.page-id-41.woocommerce-checkout .site button:hover,
body.page-id-41.woocommerce-checkout .site .button:hover,
body.page-id-41.woocommerce-checkout .site #place_order:hover {
    background: #e79a2f !important;
    color: #ffffff !important;
}

body.page-id-41.woocommerce-checkout .site .entry-title {
    color: #eef6ff !important;
}

/* ===== 7) TABLETTE ===== */
@media (max-width: 1024px) {
    .fond-blanc-judebox,
    .fond-blanc-judebox-transparent,
    #whyus .wp-block-columns > .wp-block-column {
        padding: 18px !important;
    }

    body.postid-252.single-product .product.type-product {
        padding: 22px !important;
    }

    body.postid-252.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
        min-width: 280px !important;
        padding: 18px 34px !important;
        font-size: 1.15rem !important;
    }

    textarea#contact-form-comment-g252-message,
    textarea[name="g252-message"],
    #contact-form-comment-g252-message {
        min-height: 105px !important;
        height: 105px !important;
        max-height: 105px !important;
    }

    body.page-id-40.woocommerce-cart .site .woocommerce,
    body.page-id-40.woocommerce-cart .site .wc-block-cart,
    body.page-id-40.woocommerce-cart .site .wp-block-woocommerce-cart {
        padding: 22px !important;
        border-radius: 18px !important;
    }

    body.page-id-40.woocommerce-cart .site table.shop_table th,
    body.page-id-40.woocommerce-cart .site table.shop_table td,
    body.page-id-40.woocommerce-cart .site .cart_totals table th,
    body.page-id-40.woocommerce-cart .site .cart_totals table td {
        padding: 12px 14px !important;
    }

    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td a,
    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td span {
        padding: 10px 0 !important;
        font-size: 1rem !important;
    }

    body.page-id-41.woocommerce-checkout .site .wp-block-woocommerce-checkout,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar-layout,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout__main,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-totals-wrapper,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-order-summary,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout__actions_row,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-checkout-step,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-panel {
        padding: 20px !important;
        border-radius: 18px !important;
    }
}

/* ===== 8) CELLULAIRE ===== */
@media (max-width: 767px) {
    .fond-blanc-judebox,
    .fond-blanc-judebox-transparent {
        padding: 14px !important;
        border-radius: 10px !important;
    }

    #whyus .wp-block-columns > .wp-block-column {
        padding: 14px !important;
        border-radius: 10px !important;
    }

    body.postid-252.single-product .product.type-product {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.postid-252.single-product .product_title,
    body.page-id-40.woocommerce-cart .site .entry-title,
    body.page-id-41.woocommerce-checkout .site .entry-title {
        font-size: 1.8rem !important;
        line-height: 1.2 !important;
    }

    body.postid-252.single-product .product input,
    body.postid-252.single-product .product select,
    body.postid-252.single-product .product textarea,
    body.page-id-40.woocommerce-cart .site input,
    body.page-id-40.woocommerce-cart .site select,
    body.page-id-40.woocommerce-cart .site textarea,
    body.page-id-41.woocommerce-checkout .site input,
    body.page-id-41.woocommerce-checkout .site select,
    body.page-id-41.woocommerce-checkout .site textarea {
        font-size: 16px !important;
    }

    body.postid-252.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 16px 18px !important;
        font-size: 1.08rem !important;
        margin: 20px 0 20px 0 !important;
    }

    .ast-single-product-payments.ast-inherit-color-version {
        padding: 16px 12px 12px 12px !important;
    }

    .ast-single-product-payments.ast-inherit-color-version legend {
        margin-left: 0 !important;
        padding: 6px 10px !important;
        font-size: 0.95rem !important;
    }

    textarea#contact-form-comment-g252-message,
    textarea[name="g252-message"],
    #contact-form-comment-g252-message {
        min-height: 90px !important;
        height: 90px !important;
        max-height: 90px !important;
    }

    body.page-id-40.woocommerce-cart .site .woocommerce,
    body.page-id-40.woocommerce-cart .site .wc-block-cart,
    body.page-id-40.woocommerce-cart .site .wp-block-woocommerce-cart {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.page-id-40.woocommerce-cart .site table.shop_table th,
    body.page-id-40.woocommerce-cart .site table.shop_table td,
    body.page-id-40.woocommerce-cart .site .cart_totals table th,
    body.page-id-40.woocommerce-cart .site .cart_totals table td,
    body.page-id-40.woocommerce-cart .site .shop_table_responsive tr td,
    body.page-id-40.woocommerce-cart .site .shop_table_responsive tr th {
        padding: 10px 10px !important;
    }

    body.page-id-40.woocommerce-cart .site .wc-block-components-totals-item,
    body.page-id-40.woocommerce-cart .site .wc-block-cart-item,
    body.page-id-40.woocommerce-cart .site .wc-block-components-sidebar-layout .wc-block-components-main,
    body.page-id-40.woocommerce-cart .site .wc-block-components-sidebar {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker-header {
        padding: 8px 6px !important;
    }

    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker-title {
        font-size: 1rem !important;
        line-height: 1.2 !important;
    }

    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker th {
        padding: 6px 0 !important;
        font-size: 0.9rem !important;
    }

    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td a,
    body.postid-252.single-product #wc-bookings-booking-form .ui-datepicker td span {
        min-height: 44px !important;
        padding: 10px 0 !important;
        font-size: 1rem !important;
    }

    body.postid-252.single-product .single_add_to_cart_button,
    body.postid-252.single-product .product .button,
    body.postid-252.single-product .product button,
    body.page-id-40.woocommerce-cart .site .button,
    body.page-id-40.woocommerce-cart .site button,
    body.page-id-40.woocommerce-cart .site input.button,
    body.page-id-40.woocommerce-cart .site .wc-proceed-to-checkout a.checkout-button,
    body.page-id-40.woocommerce-cart .site .wc-block-cart__submit-button,
    body.page-id-40.woocommerce-cart .site .wc-block-components-button,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-button,
    body.page-id-41.woocommerce-checkout .site button,
    body.page-id-41.woocommerce-checkout .site .button,
    body.page-id-41.woocommerce-checkout .site #place_order {
        font-size: 1rem !important;
        padding: 14px 16px !important;
    }

    body.page-id-41.woocommerce-checkout .site .wp-block-woocommerce-checkout,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar-layout,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout__main,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-sidebar,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-totals-wrapper,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-order-summary,
    body.page-id-41.woocommerce-checkout .site .wc-block-checkout__actions_row,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-checkout-step,
    body.page-id-41.woocommerce-checkout .site .wc-block-components-panel {
        padding: 14px !important;
        border-radius: 14px !important;
    }
}

/* ===== 9) SECTIONS ACCUEIL - BLOCS CLAIRS COMPLETS ===== */

/* Applique un fond clair au groupe complet pour toutes les sections avec ancre */
.wp-block-group.background:has(> h3[id]) {
    background: rgba(235, 245, 255, 0.22) !important;
    border-radius: 14px !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

/* Le titre de section prend aussi le fond du groupe visuellement */
.wp-block-group.background:has(> h3[id]) > h3.wp-block-heading {
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    border-radius: 12px !important;
    background: rgba(235, 245, 255, 0.85) !important;
    color: #102133 !important;
    box-sizing: border-box !important;
}

/* Le contenu / colonnes internes garde aussi le fond clair */
.wp-block-group.background:has(> h3[id]) .wp-block-columns > .wp-block-column {
    background: rgba(235, 245, 255, 0.85) !important;
    border-radius: 12px !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

/* Si une liste est directement dans la section, on évite les doubles fonds inutiles */
.wp-block-group.background:has(> h3[id]) .wp-block-list {
    margin-bottom: 0 !important;
}

/* ===== Ajustements responsive pour ces sections ===== */
@media (max-width: 1024px) {
    .wp-block-group.background:has(> h3[id]) {
        padding: 18px !important;
        border-radius: 12px !important;
    }

    .wp-block-group.background:has(> h3[id]) > h3.wp-block-heading,
    .wp-block-group.background:has(> h3[id]) .wp-block-columns > .wp-block-column {
        padding: 18px !important;
        border-radius: 10px !important;
    }
}

@media (max-width: 767px) {
    .wp-block-group.background:has(> h3[id]) {
        padding: 14px !important;
        border-radius: 10px !important;
    }

    .wp-block-group.background:has(> h3[id]) > h3.wp-block-heading,
    .wp-block-group.background:has(> h3[id]) .wp-block-columns > .wp-block-column {
        padding: 14px !important;
        border-radius: 10px !important;
    }
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 120px;
}

@media (max-width: 1024px) {
    html {
        scroll-padding-top: 105px;
    }
}

@media (max-width: 767px) {
    html {
        scroll-padding-top: 90px;
    }
}

/* ===== 10) OVERRIDE MENU ACTIF SANS CARRÉ CLAIR ===== */
.main-header-menu > .current-menu-item > a,
.main-header-menu > .current-menu-ancestor > a,
.main-header-menu > .current_page_item > a,
.main-header-menu > .current-page-ancestor > a,
.ast-desktop .main-header-menu > .current-menu-item > a,
.ast-desktop .main-header-menu > .current-menu-ancestor > a,
.ast-desktop .main-header-menu > .current_page_item > a,
.ast-desktop .main-header-menu > .current-page-ancestor > a,
.ast-builder-menu-1 .main-header-menu > .current-menu-item > a,
.ast-builder-menu-1 .main-header-menu > .current-menu-ancestor > a,
.ast-builder-menu-1 .main-header-menu > .current_page_item > a,
.ast-builder-menu-1 .main-header-menu > .current-page-ancestor > a {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Exception Plan B : le parent dropdown ne doit pas rester actif visuellement */
.main-header-menu > .menu-item-has-children.current-menu-item > a,
.main-header-menu > .menu-item-has-children.current-menu-ancestor > a,
.main-header-menu > .menu-item-has-children.current_page_item > a,
.main-header-menu > .menu-item-has-children.current-page-ancestor > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-menu-item > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-menu-ancestor > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current_page_item > a,
.ast-desktop .main-header-menu > .menu-item-has-children.current-page-ancestor > a,
.ast-builder-menu-1 .main-header-menu > .menu-item-has-children.current-menu-item > a,
.ast-builder-menu-1 .main-header-menu > .menu-item-has-children.current-menu-ancestor > a,
.ast-builder-menu-1 .main-header-menu > .menu-item-has-children.current_page_item > a,
.ast-builder-menu-1 .main-header-menu > .menu-item-has-children.current-page-ancestor > a {
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* ===== 11) FIX CIBLÉ MENU TYPE D'ÉVÈNEMENTS (menu-item-783) ===== */

/* Repos : toujours éteint */
#menu-item-783 > a,
#menu-item-783 > a.menu-link,
#menu-item-783.current-menu-ancestor > a,
#menu-item-783.current-menu-parent > a,
#menu-item-783.current-menu-item > a,
#menu-item-783.current_page_item > a,
#menu-item-783.current-page-ancestor > a,
#menu-item-783.current-menu-ancestor > a.menu-link,
#menu-item-783.current-menu-parent > a.menu-link,
#menu-item-783.current-menu-item > a.menu-link,
#menu-item-783.current_page_item > a.menu-link,
#menu-item-783.current-page-ancestor > a.menu-link {
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Survol / focus : orange */
#menu-item-783:hover > a,
#menu-item-783:focus-within > a,
#menu-item-783:hover > a.menu-link,
#menu-item-783:focus-within > a.menu-link {
    color: #e3c16f !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Flèche orange au survol / focus */
#menu-item-783:hover > a .ast-icon svg,
#menu-item-783:focus-within > a .ast-icon svg {
    fill: #e3c16f !important;
}

/* Mobile : quand le sous-menu est réellement ouvert */
#menu-item-783.ast-submenu-expanded > a,
#menu-item-783.ast-submenu-expanded > a.menu-link {
    color: #e3c16f !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#menu-item-783.ast-submenu-expanded > a .ast-icon svg {
    fill: #e3c16f !important;
}



/* ===== PAGE À PROPOS / POLITIQUES - PATCH CIBLÉ page-id-1 ===== */

/* Fond général de la page */
body.page-id-1 .site,
body.page-id-1 .site-content,
body.page-id-1 .ast-container,
body.page-id-1 .site-main,
body.page-id-1 #primary,
body.page-id-1 article#post-1 {
    background: transparent !important;
}

/* Conteneur principal */
body.page-id-1 article#post-1 .entry-content {
    background: rgba(235, 245, 255, 0.94) !important;
    border-radius: 18px !important;
    padding: 34px !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
}

/* Titre principal "Politiques et Confidentialités" */
body.page-id-1 .entry-content .wp-elements-741b5606e748968407385ad3676ba5e3,
body.page-id-1 .entry-content h2.wp-block-heading.has-text-align-center.has-background {
    background: #163a59 !important;
    color: #eef6ff !important;
    border: 0 !important;
    border-radius: 14px !important;
    padding: 18px 22px !important;
    margin: 0 0 24px 0 !important;
    text-align: center !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14) !important;
}

body.page-id-1 .entry-content .wp-elements-741b5606e748968407385ad3676ba5e3 strong,
body.page-id-1 .entry-content h2.wp-block-heading.has-text-align-center.has-background strong {
    color: #eef6ff !important;
}

/* Tous les autres titres internes */
body.page-id-1 .entry-content h2:not(.wp-elements-741b5606e748968407385ad3676ba5e3),
body.page-id-1 .entry-content h3,
body.page-id-1 .entry-content h4,
body.page-id-1 .entry-content h5,
body.page-id-1 .entry-content h6 {
    color: #163a59 !important;
    line-height: 1.25 !important;
}

/* Texte général */
body.page-id-1 .entry-content,
body.page-id-1 .entry-content p,
body.page-id-1 .entry-content li,
body.page-id-1 .entry-content span,
body.page-id-1 .entry-content strong,
body.page-id-1 .entry-content em {
    color: #102133 !important;
    line-height: 1.7 !important;
}

/* Liens */
body.page-id-1 .entry-content a {
    color: #163a59 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    word-break: break-word !important;
}

body.page-id-1 .entry-content a:hover {
    color: #c8a455 !important;
}

/* Listes */
body.page-id-1 .entry-content ul,
body.page-id-1 .entry-content ol {
    padding-left: 1.4rem !important;
    margin-bottom: 1.2rem !important;
}

body.page-id-1 .entry-content li {
    margin-bottom: 0.45rem !important;
}

/* Séparations visuelles douces */
body.page-id-1 .entry-content h2:not(.wp-elements-741b5606e748968407385ad3676ba5e3):not(:first-child),
body.page-id-1 .entry-content h3:not(:first-child) {
    padding-top: 0.8rem !important;
    border-top: 1px solid rgba(16, 33, 51, 0.10) !important;
}

/* Responsive */
@media (max-width: 1024px) {
    body.page-id-1 article#post-1 .entry-content {
        padding: 24px !important;
        border-radius: 16px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-1 article#post-1 .entry-content {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.page-id-1 .entry-content .wp-elements-741b5606e748968407385ad3676ba5e3,
    body.page-id-1 .entry-content h2.wp-block-heading.has-text-align-center.has-background {
        padding: 14px 16px !important;
        border-radius: 12px !important;
        font-size: 1.35rem !important;
        line-height: 1.25 !important;
    }

    body.page-id-1 .entry-content,
    body.page-id-1 .entry-content p,
    body.page-id-1 .entry-content li {
        font-size: 1rem !important;
    }
}


/* ===== PAGE CONTACT - PATCH CIBLÉ ===== */

/* Fond général de la page contact */
body.page-id-360 .site,
body.page-id-360 .site-content,
body.page-id-360 .ast-container,
body.page-id-360 .site-main,
body.page-id-360 #primary,
body.page-id-360 article#post-360 {
    background: transparent !important;
}

/* Conteneur principal */
body.page-id-360 article#post-360 .entry-content {
    background: rgba(235, 245, 255, 0.94) !important;
    border-radius: 18px !important;
    padding: 34px !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
}

/* Titre "Contactez Nous" */
body.page-id-360 .entry-content .wp-elements-67463b14d04b5cb1b62206ce288d17d2,
body.page-id-360 .entry-content p.has-x-large-font-size.has-text-align-center {
    background: #163a59 !important;
    color: #eef6ff !important;
    border: 0 !important;
    border-radius: 14px !important;
    padding: 18px 22px !important;
    margin: 0 0 24px 0 !important;
    text-align: center !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14) !important;
}

body.page-id-360 .entry-content .wp-elements-67463b14d04b5cb1b62206ce288d17d2 strong,
body.page-id-360 .entry-content p.has-x-large-font-size.has-text-align-center strong {
    color: #eef6ff !important;
}

/* Bloc principal des coordonnées / FAQ */
body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background {
    background: rgba(255, 255, 255, 0.96) !important;
    color: #102133 !important;
    border-radius: 14px !important;
    padding: 28px 24px !important;
    margin: 0 !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.10) !important;
    line-height: 1.75 !important;
}

/* Texte interne du bloc */
body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e strong,
body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e a,
body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background,
body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background strong,
body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background a {
    color: #102133 !important;
}

/* Liens */
body.page-id-360 .entry-content a {
    color: #163a59 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    word-break: break-word !important;
}

body.page-id-360 .entry-content a:hover {
    color: #c8a455 !important;
}

/* Responsive */
@media (max-width: 1024px) {
    body.page-id-360 article#post-360 .entry-content {
        padding: 24px !important;
        border-radius: 16px !important;
    }

    body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
    body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background {
        padding: 22px 18px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-360 article#post-360 .entry-content {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.page-id-360 .entry-content .wp-elements-67463b14d04b5cb1b62206ce288d17d2,
    body.page-id-360 .entry-content p.has-x-large-font-size.has-text-align-center {
        padding: 14px 16px !important;
        border-radius: 12px !important;
        font-size: 1.35rem !important;
        line-height: 1.25 !important;
    }

    body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
    body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background {
        padding: 18px 14px !important;
        border-radius: 12px !important;
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }
}

/* ===== PAGE PRODUIT / RÉSERVATION - EQUIPMENT RENTAL COPIE (postid-680) ===== */
/* À coller à la fin du CSS additionnel */

/* Fond général et conteneurs */
body.postid-680.single-product .site,
body.postid-680.single-product .site-content,
body.postid-680.single-product .ast-container,
body.postid-680.single-product .site-main,
body.postid-680.single-product #primary,
body.postid-680.single-product .ast-woocommerce-container,
body.postid-680.single-product .product {
    background: transparent !important;
}

/* En-tête de page */
body.postid-680.single-product .entry-header {
    text-align: center !important;
    margin-bottom: 28px !important;
}

body.postid-680.single-product .entry-title {
    color: #eef6ff !important;
    margin-bottom: 8px !important;
    line-height: 1.15 !important;
}

body.postid-680.single-product .entry-meta,
body.postid-680.single-product .entry-meta a,
body.postid-680.single-product .posted-on,
body.postid-680.single-product .comments-link {
    color: #d7dee8 !important;
    font-size: 0.95rem !important;
}

/* Carte principale produit */
body.postid-680.single-product #product-680 {
    background: rgba(235, 245, 255, 0.94) !important;
    border-radius: 22px !important;
    padding: 30px !important;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Galerie */
body.postid-680.single-product .woocommerce-product-gallery {
    background: rgba(255, 255, 255, 0.72) !important;
    border-radius: 18px !important;
    padding: 14px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product .woocommerce-product-gallery__wrapper,
body.postid-680.single-product .woocommerce-product-gallery__image,
body.postid-680.single-product .woocommerce-product-gallery__image img,
body.postid-680.single-product .flex-viewport {
    border-radius: 14px !important;
}

body.postid-680.single-product .flex-control-thumbs img {
    border-radius: 10px !important;
}

/* Colonne contenu / résumé */
body.postid-680.single-product .summary.entry-summary {
    background: rgba(255, 255, 255, 0.82) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

/* Titre produit et texte */
body.postid-680.single-product .product_title,
body.postid-680.single-product .summary h1,
body.postid-680.single-product .summary h2,
body.postid-680.single-product .summary h3,
body.postid-680.single-product .summary h4,
body.postid-680.single-product .summary p,
body.postid-680.single-product .summary li,
body.postid-680.single-product .summary label,
body.postid-680.single-product .summary legend,
body.postid-680.single-product .summary span,
body.postid-680.single-product .summary strong,
body.postid-680.single-product .woocommerce-product-details__short-description,
body.postid-680.single-product .price,
body.postid-680.single-product .woocommerce-Price-amount {
    color: #102133 !important;
}

body.postid-680.single-product .product_title {
    font-size: 2.2rem !important;
    line-height: 1.15 !important;
    margin-bottom: 12px !important;
}

body.postid-680.single-product .woocommerce-product-details__short-description,
body.postid-680.single-product .summary p,
body.postid-680.single-product .summary li {
    line-height: 1.7 !important;
}

/* Champs du formulaire */
body.postid-680.single-product .summary input,
body.postid-680.single-product .summary select,
body.postid-680.single-product .summary textarea,
body.postid-680.single-product .summary .wc-bookings-date-picker,
body.postid-680.single-product .summary .ui-datepicker,
body.postid-680.single-product .summary .ui-datepicker-inline {
    background: rgba(255, 255, 255, 0.98) !important;
    color: #102133 !important;
    border: 1px solid rgba(16, 33, 51, 0.16) !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
}

/* Bloc date picker */
body.postid-680.single-product #wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-date-picker {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product .wc-bookings-date-picker {
    background: rgba(255, 255, 255, 0.88) !important;
    border-radius: 14px !important;
    padding: 12px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.06) !important;
}

body.postid-680.single-product .ui-datepicker table {
    width: 100% !important;
    table-layout: fixed !important;
}

body.postid-680.single-product .ui-datepicker td,
body.postid-680.single-product .ui-datepicker th {
    text-align: center !important;
}

body.postid-680.single-product .ui-datepicker td a,
body.postid-680.single-product .ui-datepicker td span {
    display: block !important;
    border-radius: 10px !important;
}

/* Bloc paiements */
body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version {
    background: #0f1720 !important;
    color: #eef6ff !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    border-radius: 14px !important;
    padding: 18px 16px !important;
}

body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version *,
body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version legend {
    color: #eef6ff !important;
}

body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version legend {
    background: rgba(22, 58, 89, 0.95) !important;
    border-radius: 10px !important;
    padding: 7px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
}

/* Boutons */
body.postid-680.single-product form.cart,
body.postid-680.single-product .wc-bookings-booking-form {
    text-align: center !important;
}

body.postid-680.single-product .single_add_to_cart_button,
body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt,
body.postid-680.single-product .product .button,
body.postid-680.single-product .product button {
    float: none !important;
    display: inline-block !important;
    width: auto !important;
    min-width: 320px !important;
    max-width: 100% !important;
    text-align: center !important;
    margin: 22px auto 12px auto !important;
    padding: 18px 40px !important;
    border-radius: 12px !important;
    font-size: 1.18rem !important;
    font-weight: 700 !important;
    background: #c87412 !important;
    color: #ffffff !important;
    border: 1px solid #c97c15 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16) !important;
}

body.postid-680.single-product .single_add_to_cart_button:hover,
body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt:hover,
body.postid-680.single-product .product .button:hover,
body.postid-680.single-product .product button:hover {
    background: #e79a2f !important;
    color: #ffffff !important;
    border-color: #d98a1f !important;
}

/* Onglets / description bas de page */
body.postid-680.single-product .woocommerce-tabs,
body.postid-680.single-product .woocommerce-tabs .panel,
body.postid-680.single-product .related,
body.postid-680.single-product .up-sells {
    background: rgba(235, 245, 255, 0.94) !important;
    color: #102133 !important;
    border-radius: 18px !important;
    padding: 24px !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14) !important;
    box-sizing: border-box !important;
    margin-top: 28px !important;
}

body.postid-680.single-product .woocommerce-tabs h2,
body.postid-680.single-product .woocommerce-tabs h3,
body.postid-680.single-product .woocommerce-tabs p,
body.postid-680.single-product .woocommerce-tabs li {
    color: #102133 !important;
}

/* Responsive tablette */
@media (max-width: 1024px) {
    body.postid-680.single-product #product-680 {
        padding: 22px !important;
        border-radius: 18px !important;
    }

    body.postid-680.single-product .summary.entry-summary {
        padding: 18px !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.9rem !important;
    }

    body.postid-680.single-product .single_add_to_cart_button,
    body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt,
    body.postid-680.single-product .product .button,
    body.postid-680.single-product .product button {
        min-width: 280px !important;
        padding: 16px 28px !important;
    }
}

/* Responsive mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #product-680 {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product .woocommerce-product-gallery,
    body.postid-680.single-product .summary.entry-summary,
    body.postid-680.single-product .woocommerce-tabs,
    body.postid-680.single-product .woocommerce-tabs .panel {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.65rem !important;
        line-height: 1.15 !important;
    }

    body.postid-680.single-product .single_add_to_cart_button,
    body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt,
    body.postid-680.single-product .product .button,
    body.postid-680.single-product .product button {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 16px 18px !important;
        font-size: 1.05rem !important;
        margin: 20px 0 10px 0 !important;
    }
}
body.postid-680.single-product .entry-header {
    display: none !important;
}

body.postid-680.single-product #primary {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
/* Garde le calendrier visible */
body.postid-680.single-product #wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-date-picker {
    display: block !important;
}

/* Cache seulement le bouton Réserver WooCommerce */
body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
    display: none !important;
}

/* Garde le formulaire Jetpack visible */
body.postid-680.single-product #contact-form-680 {
    display: block !important;
    margin-top: 24px !important;
}

/* Cache le bloc paiements si inutile */
body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version {
    display: none !important;
}

/* ===== PRODUIT 680 - MISE EN PAGE 2 COLONNES PROPRE ===== */

/* Desktop / tablette large */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        display: grid !important;
        grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr) !important;
        grid-template-areas:
            "gallery summary"
            "tabs    summary";
        gap: 24px !important;
        align-items: start !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-product-gallery {
        grid-area: gallery !important;
        margin: 0 !important;
        width: 100% !important;
    }

    body.postid-680.single-product #product-680 .summary.entry-summary {
        grid-area: summary !important;
        margin: 0 !important;
        width: 100% !important;
        position: sticky !important;
        top: 120px !important;
        align-self: start !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        grid-area: tabs !important;
        margin: 0 !important;
        width: 100% !important;
    }

    /* Le clear WooCommerce ne doit pas casser la grille */
    body.postid-680.single-product #product-680 .woocommerce-tabs::before,
    body.postid-680.single-product #product-680 .woocommerce-tabs::after,
    body.postid-680.single-product #product-680::before,
    body.postid-680.single-product #product-680::after {
        display: none !important;
    }
}

/* Style plus propre du bloc description */
body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
    background: rgba(255, 255, 255, 0.82) !important;
    border-radius: 18px !important;
    padding: 22px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    border: 0 !important;
    margin: 0 0 18px 0 !important;
    padding: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li {
    border: 0 !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li a {
    display: inline-block !important;
    background: rgba(22, 58, 89, 0.08) !important;
    color: #163a59 !important;
    border-radius: 999px !important;
    padding: 10px 16px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li.active a,
body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li a:hover {
    background: #163a59 !important;
    color: #eef6ff !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel p,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel li,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h2,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h3,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h4,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel th,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel td {
    color: #102133 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel img {
    border-radius: 14px !important;
    margin-bottom: 14px !important;
    max-width: 100% !important;
    height: auto !important;
}

/* Masquer les avis si inutiles */
body.postid-680.single-product #tab-title-reviews,
body.postid-680.single-product #tab-reviews {
    display: none !important;
}

/* Mobile / tablette petite : retour empilé normal */
@media (max-width: 921px) {
    body.postid-680.single-product #product-680 {
        display: block !important;
    }

    body.postid-680.single-product #product-680 .summary.entry-summary {
        position: static !important;
        top: auto !important;
        margin-top: 20px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 20px !important;
    }
}\n\n
/* =========================================================
   JUDEBOX - PRODUIT 680 / DEMANDE DE RÉSERVATION
   Ajustements finaux :
   - galerie à gauche
   - description sous la galerie
   - calendrier + formulaire à droite
   - champs Jetpack harmonisés
   - bouton Woo réservé masqué
   ========================================================= */

/* Base page produit 680 */
body.postid-680.single-product .site,
body.postid-680.single-product .site-content,
body.postid-680.single-product .ast-container,
body.postid-680.single-product .site-main,
body.postid-680.single-product #primary,
body.postid-680.single-product .ast-woocommerce-container,
body.postid-680.single-product .product,
body.postid-680.single-product #product-680 {
    background: transparent !important;
}

body.postid-680.single-product .entry-header {
    display: none !important;
}

body.postid-680.single-product #primary {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.postid-680.single-product #product-680 {
    background: rgba(235, 245, 255, 0.94) !important;
    border-radius: 22px !important;
    padding: 30px !important;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Grille bureau */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        display: grid !important;
        grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr) !important;
        grid-template-areas:
            "gallery summary"
            "tabs summary";
        gap: 24px !important;
        align-items: start !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-product-gallery {
        grid-area: gallery !important;
        margin: 0 !important;
        width: 100% !important;
        float: none !important;
    }

    body.postid-680.single-product #product-680 .summary.entry-summary {
        grid-area: summary !important;
        margin: 0 !important;
        width: 100% !important;
        float: none !important;
        align-self: start !important;
        position: sticky !important;
        top: 120px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        grid-area: tabs !important;
        margin: 0 !important;
        width: 100% !important;
        float: none !important;
    }

    body.postid-680.single-product #product-680::before,
    body.postid-680.single-product #product-680::after,
    body.postid-680.single-product #product-680 .woocommerce-tabs::before,
    body.postid-680.single-product #product-680 .woocommerce-tabs::after {
        display: none !important;
    }
}

/* Galerie */
body.postid-680.single-product .woocommerce-product-gallery {
    background: rgba(255, 255, 255, 0.74) !important;
    border-radius: 18px !important;
    padding: 14px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product .woocommerce-product-gallery__wrapper,
body.postid-680.single-product .woocommerce-product-gallery__image,
body.postid-680.single-product .woocommerce-product-gallery__image img,
body.postid-680.single-product .flex-viewport,
body.postid-680.single-product .flex-control-thumbs img {
    border-radius: 14px !important;
}

/* Colonne droite */
body.postid-680.single-product .summary.entry-summary {
    background: rgba(255, 255, 255, 0.84) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product .product_title,
body.postid-680.single-product .summary h1,
body.postid-680.single-product .summary h2,
body.postid-680.single-product .summary h3,
body.postid-680.single-product .summary h4,
body.postid-680.single-product .summary p,
body.postid-680.single-product .summary li,
body.postid-680.single-product .summary label,
body.postid-680.single-product .summary legend,
body.postid-680.single-product .summary span,
body.postid-680.single-product .summary strong,
body.postid-680.single-product .woocommerce-product-details__short-description,
body.postid-680.single-product .price,
body.postid-680.single-product .woocommerce-Price-amount {
    color: #102133 !important;
}

body.postid-680.single-product .product_title {
    font-size: 2.2rem !important;
    line-height: 1.15 !important;
    margin-bottom: 12px !important;
}

body.postid-680.single-product .woocommerce-product-details__short-description,
body.postid-680.single-product .summary p,
body.postid-680.single-product .summary li {
    line-height: 1.7 !important;
}

/* Calendrier visible */
body.postid-680.single-product #wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-booking-form,
body.postid-680.single-product .wc-bookings-date-picker {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product .wc-bookings-date-picker {
    background: rgba(255, 255, 255, 0.88) !important;
    border-radius: 14px !important;
    padding: 12px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.06) !important;
}

body.postid-680.single-product .ui-datepicker table {
    width: 100% !important;
    table-layout: fixed !important;
}

body.postid-680.single-product .ui-datepicker td,
body.postid-680.single-product .ui-datepicker th {
    text-align: center !important;
}

body.postid-680.single-product .ui-datepicker td a,
body.postid-680.single-product .ui-datepicker td span {
    display: block !important;
    border-radius: 10px !important;
}

/* Formulaire Jetpack harmonisé */
body.postid-680.single-product #contact-form-680 {
    display: block !important;
    margin-top: 24px !important;
}

body.postid-680.single-product #contact-form-680 .contact-form,
body.postid-680.single-product #contact-form-680 .jetpack-contact-form__form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px 18px !important;
    align-items: start !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-wrap {
    margin: 0 !important;
    padding: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-textarea-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-phone-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap {
    grid-column: span 1 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-textarea-wrap,
body.postid-680.single-product #contact-form-680 .contact-submit,
body.postid-680.single-product #contact-form-680 .contact-form__error,
body.postid-680.single-product #contact-form-680 .contact-form-submission,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    grid-column: 1 / -1 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-label,
body.postid-680.single-product #contact-form-680 label,
body.postid-680.single-product #contact-form-680 legend {
    display: block !important;
    color: #163a59 !important;
    font-weight: 700 !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.35 !important;
}

body.postid-680.single-product #contact-form-680 input[type="text"],
body.postid-680.single-product #contact-form-680 input[type="email"],
body.postid-680.single-product #contact-form-680 input[type="tel"],
body.postid-680.single-product #contact-form-680 input[type="number"],
body.postid-680.single-product #contact-form-680 input[type="date"],
body.postid-680.single-product #contact-form-680 select,
body.postid-680.single-product #contact-form-680 textarea {
    width: 100% !important;
    background: rgba(255, 255, 255, 0.98) !important;
    color: #102133 !important;
    border: 1px solid rgba(16, 33, 51, 0.16) !important;
    border-radius: 12px !important;
    padding: 12px 14px !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    min-height: 46px !important;
}

body.postid-680.single-product #contact-form-680 select {
    appearance: auto !important;
    height: 46px !important;
}

body.postid-680.single-product #contact-form-680 textarea,
body.postid-680.single-product #contact-form-comment-g680-message,
body.postid-680.single-product #contact-form-comment-g680-messagedonnezquelquesdtailspourfaciliterlasoumission,
body.postid-680.single-product textarea[name="g680-message"],
body.postid-680.single-product textarea[name="g680-messagedonnezquelquesdtailspourfaciliterlasoumission"] {
    min-height: 140px !important;
    height: 140px !important;
    max-height: none !important;
    resize: vertical !important;
}

body.postid-680.single-product #contact-form-680 fieldset {
    background: rgba(255, 255, 255, 0.55) !important;
    border: 1px solid rgba(16, 33, 51, 0.10) !important;
    border-radius: 12px !important;
    padding: 14px 16px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product #contact-form-680 .contact-form__input-error,
body.postid-680.single-product #contact-form-680 .contact-form__error {
    margin-top: 6px !important;
    font-size: 0.92rem !important;
}

body.postid-680.single-product #contact-form-680 .contact-submit {
    text-align: center !important;
    margin-top: 6px !important;
}

body.postid-680.single-product #contact-form-680 .pushbutton-wide,
body.postid-680.single-product #contact-form-680 button[type="submit"],
body.postid-680.single-product #contact-form-680 input[type="submit"] {
    display: inline-block !important;
    width: auto !important;
    min-width: 320px !important;
    max-width: 100% !important;
    text-align: center !important;
    margin: 18px auto 0 auto !important;
    padding: 18px 40px !important;
    border-radius: 12px !important;
    font-size: 1.12rem !important;
    font-weight: 700 !important;
    background: #163a59 !important;
    color: #ffffff !important;
    border: 1px solid #163a59 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16) !important;
}

body.postid-680.single-product #contact-form-680 .pushbutton-wide:hover,
body.postid-680.single-product #contact-form-680 button[type="submit"]:hover,
body.postid-680.single-product #contact-form-680 input[type="submit"]:hover {
    background: #224d73 !important;
    color: #ffffff !important;
    border-color: #224d73 !important;
}

/* On masque seulement le bouton WooCommerce */
body.postid-680.single-product .wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
    display: none !important;
}

/* Bloc paiements inutile */
body.postid-680.single-product .ast-single-product-payments.ast-inherit-color-version {
    display: none !important;
}

/* Description à gauche */
body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
    background: rgba(255, 255, 255, 0.82) !important;
    border-radius: 18px !important;
    padding: 22px !important;
    box-shadow: inset 0 0 0 1px rgba(16, 33, 51, 0.07) !important;
    box-sizing: border-box !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    border: 0 !important;
    margin: 0 0 18px 0 !important;
    padding: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li {
    border: 0 !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li a {
    display: inline-block !important;
    background: rgba(22, 58, 89, 0.08) !important;
    color: #163a59 !important;
    border-radius: 999px !important;
    padding: 10px 16px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li.active a,
body.postid-680.single-product #product-680 .woocommerce-tabs .tabs li a:hover {
    background: #163a59 !important;
    color: #eef6ff !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel p,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel li,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h2,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h3,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel h4,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel th,
body.postid-680.single-product #product-680 .woocommerce-tabs .panel td {
    color: #102133 !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs .panel img {
    border-radius: 14px !important;
    margin-bottom: 14px !important;
    max-width: 100% !important;
    height: auto !important;
}

/* Avis masqués pour aller plus vite */
body.postid-680.single-product #tab-title-reviews,
body.postid-680.single-product #tab-reviews {
    display: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
    body.postid-680.single-product #product-680 {
        padding: 22px !important;
        border-radius: 18px !important;
    }

    body.postid-680.single-product .summary.entry-summary {
        padding: 18px !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.9rem !important;
    }
}

@media (max-width: 921px) {
    body.postid-680.single-product #product-680 {
        display: block !important;
    }

    body.postid-680.single-product #product-680 .summary.entry-summary {
        position: static !important;
        top: auto !important;
        margin-top: 20px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 20px !important;
    }
}

@media (max-width: 767px) {
    body.postid-680.single-product #product-680 {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product .woocommerce-product-gallery,
    body.postid-680.single-product .summary.entry-summary,
    body.postid-680.single-product .woocommerce-tabs,
    body.postid-680.single-product .woocommerce-tabs .panel {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.65rem !important;
        line-height: 1.15 !important;
    }

    body.postid-680.single-product #contact-form-680 .contact-form,
    body.postid-680.single-product #contact-form-680 .jetpack-contact-form__form {
        grid-template-columns: 1fr !important;
    }

    body.postid-680.single-product #contact-form-680 .pushbutton-wide,
    body.postid-680.single-product #contact-form-680 button[type="submit"],
    body.postid-680.single-product #contact-form-680 input[type="submit"] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 16px 18px !important;
        font-size: 1.05rem !important;
    }
}



/* =========================================================
   JUDEBOX - AJUSTEMENTS FINAUX PRODUIT 680
   - champ adresse de livraison
   - select Jetpack sans faux container qui dépasse
   - description encore plus haute
   - alignement final formulaire
   ========================================================= */

/* Select Jetpack : retire complètement le faux bloc interne qui dépasse */
body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap {
    overflow: visible !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap .contact-form__select-wrapper {
    display: block !important;
    width: 100% !important;
    min-height: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid rgba(16, 33, 51, 0.16) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    position: relative !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap .contact-form__select-element-wrapper {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    position: relative !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap select {
    display: block !important;
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    padding: 10px 42px 10px 14px !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap .jetpack-field-dropdown__icon {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    pointer-events: none !important;
}

/* Adresse de livraison : pleine largeur pour plus de confort */
body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap,
body.postid-680.single-product #contact-form-680 #g680-adressedelivraison,
body.postid-680.single-product #contact-form-680 [for="g680-adressedelivraison"] {
    box-sizing: border-box !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap {
    grid-column: 1 / -1 !important;
}

/* Checkbox multiples plus propres */
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 16px !important;
    margin-top: 8px !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* Description encore plus haute sous la galerie */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        gap: 14px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -18px !important;
        padding-top: 12px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-product-gallery {
        margin-bottom: 0 !important;
    }
}

/* Onglets : espace plus propre en haut */
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap {
        grid-column: span 1 !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
        flex-direction: column !important;
        gap: 10px !important;
    }
}


/* =========================================================
   JUDEBOX - PRODUIT 680 - CORRECTIFS FINAUX v3
   - retire définitivement la ligne noire des onglets
   - corrige les legends des fieldsets checkbox
   - garde la description encore plus haute
   ========================================================= */

/* Ligne noire / bordure des onglets WooCommerce */
body.postid-680.single-product #product-680 .woocommerce-tabs,
body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper,
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs,
body.postid-680.single-product #product-680 ul.tabs.wc-tabs {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

body.postid-680.single-product #product-680 .woocommerce-tabs::before,
body.postid-680.single-product #product-680 .woocommerce-tabs::after,
body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper::before,
body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper::after,
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs::before,
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs::after,
body.postid-680.single-product #product-680 ul.tabs.wc-tabs::before,
body.postid-680.single-product #product-680 ul.tabs.wc-tabs::after,
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs li::before,
body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs li::after,
body.postid-680.single-product #product-680 ul.tabs.wc-tabs li::before,
body.postid-680.single-product #product-680 ul.tabs.wc-tabs li::after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Description encore plus proche de la galerie */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        gap: 10px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -28px !important;
        padding-top: 8px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs ul.tabs {
        margin-bottom: 12px !important;
    }
}

/* Fieldsets checkbox : on évite que le legend dépasse */
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap {
    grid-column: 1 / -1 !important;
    overflow: visible !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset {
    position: relative !important;
    background: rgba(255, 255, 255, 0.55) !important;
    border: 1px solid rgba(16, 33, 51, 0.10) !important;
    border-radius: 12px !important;
    padding: 18px 16px 14px 16px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset legend,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-field-label {
    display: block !important;
    width: 100% !important;
    float: none !important;
    position: static !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #163a59 !important;
    line-height: 1.4 !important;
    white-space: normal !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-text,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    display: inline !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    margin-left: 0.35em !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    margin-top: 2px !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset,
    body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset {
        padding: 16px 14px 12px 14px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 10px !important;
        padding-top: 12px !important;
    }
}


/* =========================================================
   JUDEBOX - PRODUIT 680 - CORRECTIFS FINAUX v4
   - aligne mieux les champs du haut
   - remet les legends checkbox dans le bloc
   - remonte encore le bloc description à gauche
   ========================================================= */

/* Grille formulaire : tous les champs du haut alignés pareil */
body.postid-680.single-product #contact-form-680 .grunion-field-wrap {
    align-self: start !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-wrap > p,
body.postid-680.single-product #contact-form-680 .grunion-field-wrap > br,
body.postid-680.single-product #contact-form-680 form > p {
    display: none !important;
}

/* On remet les champs texte standards sur 1 colonne */
body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap {
    grid-column: span 1 !important;
}

/* Numéro de téléphone et adresse de livraison pleine largeur */
body.postid-680.single-product #contact-form-680 [for="g680-numrodetlphone"],
body.postid-680.single-product #contact-form-680 #g680-numrodetlphone,
body.postid-680.single-product #contact-form-680 [for="g680-adressedelivraison"],
body.postid-680.single-product #contact-form-680 #g680-adressedelivraison {
    box-sizing: border-box !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-numrodetlphone),
body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-adressedelivraison) {
    grid-column: 1 / -1 !important;
}

/* Hauteur cohérente pour select, email et dates */
body.postid-680.single-product #contact-form-680 input[type="email"],
body.postid-680.single-product #contact-form-680 input.jp-contact-form-date,
body.postid-680.single-product #contact-form-680 input[type="text"],
body.postid-680.single-product #contact-form-680 .contact-form__select-wrapper {
    min-height: 46px !important;
    height: 46px !important;
}

/* Checkbox multiples : legend bien à l'intérieur du bloc */
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset {
    padding-top: 16px !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend {
    position: static !important;
    transform: none !important;
    inset: auto !important;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    line-height: 1.45 !important;
    overflow: visible !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-text,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    margin-left: 0.25em !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    min-height: 24px !important;
    line-height: 1.4 !important;
}

/* Remonte encore la description à gauche */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        grid-template-rows: auto 1fr !important;
        gap: 6px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -42px !important;
        padding-top: 4px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs .panel {
        margin-top: 0 !important;
    }
}

/* Mobile : on enlève les règles avancées */
@media (max-width: 767px) {
    body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-numrodetlphone),
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-adressedelivraison) {
        grid-column: span 1 !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 8px !important;
        padding-top: 10px !important;
    }
}

/* ===== PATCH FINITION PRODUIT 680 ===== */

/* 1) Redonne un peu d'air entre galerie du haut et bloc description */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -22px !important;   /* avant c'était trop agressif */
        padding-top: 14px !important;
    }

    body.postid-680.single-product #product-680 {
        gap: 12px !important;
    }
}

/* 2) Legends des blocs checkbox : les remettre visuellement dans le cadre */
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    padding: 18px 16px 16px 16px !important;
    margin: 0 !important;
    overflow: hidden !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset legend {
    display: block !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    white-space: normal !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-text,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    display: inline !important;
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    margin-left: 0.25em !important;
}

/* 3) Meilleur alignement vertical des champs du haut */
body.postid-680.single-product #contact-form-680 .grunion-field-wrap {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-self: start !important;
    min-width: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-label {
    min-height: 40px !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.35 !important;
    display: flex !important;
    align-items: flex-end !important;
}

body.postid-680.single-product #contact-form-680 input[type="text"],
body.postid-680.single-product #contact-form-680 input[type="email"],
body.postid-680.single-product #contact-form-680 input.jp-contact-form-date,
body.postid-680.single-product #contact-form-680 .contact-form__select-wrapper,
body.postid-680.single-product #contact-form-680 select {
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
}

/* 4) Les groupes checkbox gardent toute la largeur */
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap {
    grid-column: 1 / -1 !important;
}

/* 5) Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 10px !important;
        padding-top: 12px !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-field-label {
        min-height: auto !important;
        display: block !important;
    }
}

/* ===== PATCH AJUSTEMENT FIN - PRODUIT 680 ===== */

/* 1) Bloc description de gauche : on le redescend un peu */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -28px !important; /* avant trop haut */
        padding-top: 10px !important;
    }

    body.postid-680.single-product #product-680 {
        gap: 10px !important;
    }
}

/* 2) Fieldsets checkbox : force le legend à vivre comme un bloc normal */
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    padding: 20px 16px 16px 16px !important;
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset legend {
    display: block !important;
    width: 100% !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1.45 !important;
    white-space: normal !important;
}

/* Texte du legend */
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-text,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    display: inline !important;
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset .grunion-label-required {
    margin-left: 0.25em !important;
}

/* Boutons radio / checkbox alignés plus proprement sous le titre */
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 16px !important;
    margin-top: 0 !important;
    align-items: flex-start !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="checkbox"],
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 8px !important;
        padding-top: 10px !important;
    }

    body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
    body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
        padding: 18px 14px 14px 14px !important;
    }
}


/* =========================================================
   JUDEBOX - PRODUIT 680 - FINAL OVERRIDE v5
   Ce bloc corrige les derniers conflits créés par les anciens patches :
   1) le bloc description de gauche descend légèrement
   2) les legends des fieldsets checkbox ne sont plus traités comme des labels flex
   3) les champs du haut gardent un alignement cohérent
   ========================================================= */

/* ---------- 1) Description de gauche : la redescendre un peu ---------- */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 {
        gap: 14px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -12px !important;
        padding-top: 12px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs .tabs {
        margin-bottom: 14px !important;
    }
}

/* ---------- 2) Aligner correctement les champs du haut ---------- */
body.postid-680.single-product #contact-form-680 .grunion-field-wrap {
    align-self: start !important;
}

/* Évite que les legends héritent du style flex prévu pour les labels classiques */
body.postid-680.single-product #contact-form-680 label.grunion-field-label:not(legend) {
    min-height: 40px !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.35 !important;
    display: flex !important;
    align-items: flex-end !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-wrap > p,
body.postid-680.single-product #contact-form-680 .grunion-field-wrap > br,
body.postid-680.single-product #contact-form-680 form > p {
    display: none !important;
}

body.postid-680.single-product #contact-form-680 input[type="text"],
body.postid-680.single-product #contact-form-680 input[type="email"],
body.postid-680.single-product #contact-form-680 input.jp-contact-form-date,
body.postid-680.single-product #contact-form-680 .contact-form__select-wrapper,
body.postid-680.single-product #contact-form-680 select {
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
}

/* Largeurs logiques */
body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap {
    grid-column: span 1 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-numrodetlphone),
body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-adressedelivraison) {
    grid-column: 1 / -1 !important;
}

/* ---------- 3) Corriger les blocs checkbox / radio ---------- */
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap {
    grid-column: 1 / -1 !important;
    overflow: visible !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    position: relative !important;
    padding: 18px 16px 16px 16px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.55) !important;
    border: 1px solid rgba(16, 33, 51, 0.10) !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
}

/* LE point critique : neutraliser totalement l'héritage flex du legend */
body.postid-680.single-product #contact-form-680 legend.grunion-field-label,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend.grunion-field-label {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    align-items: normal !important;
    justify-content: normal !important;
    position: static !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    float: none !important;
    transform: none !important;
    width: 100% !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1.45 !important;
    white-space: normal !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-text,
body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    display: inline !important;
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    margin-left: 0.25em !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 16px !important;
    margin-top: 0 !important;
    align-items: flex-start !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="checkbox"],
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* ---------- 4) Mobile ---------- */
@media (max-width: 767px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 10px !important;
        padding-top: 10px !important;
    }

    body.postid-680.single-product #contact-form-680 label.grunion-field-label:not(legend) {
        min-height: auto !important;
        display: block !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-numrodetlphone),
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap:has(#g680-adressedelivraison) {
        grid-column: span 1 !important;
    }
}


/* =========================================================
   JUDEBOX - PRODUIT 680 - FINAL OVERRIDE v6
   Derniers correctifs :
   - bloc description gauche légèrement plus bas
   - titres des fieldsets checkbox parfaitement dans le bloc
   - texte des options aligné verticalement avec les cases
   ========================================================= */

/* 1) Bloc description gauche : on le redescend légèrement */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -4px !important;
        padding-top: 14px !important;
    }

    body.postid-680.single-product #product-680 {
        gap: 16px !important;
    }
}

/* 2) Fieldsets checkbox : neutraliser complètement le comportement natif du legend */
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    padding: 18px 16px 16px 16px !important;
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend.grunion-field-label {
    all: unset !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    color: #163a59 !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    white-space: normal !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-text,
body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    display: inline !important;
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    margin-left: 0.25em !important;
}

/* 3) Options checkbox : texte centré verticalement avec la case */
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 16px !important;
    align-items: flex-start !important;
    margin-top: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="checkbox"],
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    flex: 0 0 18px !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-label,
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-label.checkbox-multiple,
body.postid-680.single-product #contact-form-680 .grunion-field-text {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
}

/* 4) Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 10px !important;
        padding-top: 10px !important;
    }

    body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
    body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
        padding: 16px 14px 14px 14px !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
        flex-direction: column !important;
        gap: 10px !important;
    }
}


/* =========================================================
   JUDEBOX - PRODUIT 680 - FINAL OVERRIDE v7
   Ajustements finaux :
   - legend à l'extérieur visuel du fieldset
   - cases/texte encore mieux alignés
   ========================================================= */

/* 1) Le bloc description gauche reste légèrement plus bas */
@media (min-width: 922px) {
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: -4px !important;
        padding-top: 14px !important;
    }

    body.postid-680.single-product #product-680 {
        gap: 16px !important;
    }
}

/* 2) Les blocs checkbox/radio : titre visuellement à l'extérieur du cadre */
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap {
    grid-column: 1 / -1 !important;
    overflow: visible !important;
    padding-top: 8px !important;
}

body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
    position: relative !important;
    overflow: visible !important;
    margin: 10px 0 0 0 !important;
    padding: 22px 16px 16px 16px !important;
    background: rgba(255, 255, 255, 0.55) !important;
    border: 1px solid rgba(16, 33, 51, 0.10) !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
}

/* On remet le legend "hors du cadre" visuellement */
body.postid-680.single-product #contact-form-680 legend.grunion-field-label,
body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend.grunion-field-label {
    all: unset !important;
    position: absolute !important;
    left: 14px !important;
    top: -11px !important;
    z-index: 2 !important;
    display: inline-block !important;
    max-width: calc(100% - 28px) !important;
    padding: 0 8px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: rgba(235, 245, 255, 0.94) !important;
    color: #163a59 !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    border-radius: 6px !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-text,
body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    display: inline !important;
    vertical-align: baseline !important;
}

body.postid-680.single-product #contact-form-680 legend.grunion-field-label .grunion-label-required {
    margin-left: 0.25em !important;
}

/* 3) Options : texte parfaitement aligné avec la case */
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 16px !important;
    align-items: flex-start !important;
    margin-top: 2px !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options .contact-form-field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="checkbox"],
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    vertical-align: middle !important;
    flex: 0 0 18px !important;
    position: relative !important;
    top: 0 !important;
}

body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-label,
body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-label.checkbox-multiple {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
}

body.postid-680.single-product #contact-form-680 .grunion-field-text {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
    position: relative !important;
    top: 0 !important;
}

/* Erreurs sous les blocs checkbox */
body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap .contact-form__input-error {
    margin-top: 10px !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset,
    body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap fieldset {
        margin-top: 12px !important;
        padding: 22px 14px 14px 14px !important;
    }

    body.postid-680.single-product #contact-form-680 legend.grunion-field-label,
    body.postid-680.single-product #contact-form-680 .jetpack-field-multiple__fieldset legend.grunion-field-label {
        left: 12px !important;
        top: -10px !important;
        max-width: calc(100% - 24px) !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
        flex-direction: column !important;
        gap: 10px !important;
    }
}
/* Réaffiche le bloc submit Jetpack */
body.postid-680.single-product #contact-form-680 p.contact-submit,
body.postid-680.single-product #contact-form-680 .contact-submit {
    display: block !important;
    text-align: center !important;
    margin-top: 12px !important;
}

/* Le paragraphe qui contient réellement le bouton */
body.postid-680.single-product #contact-form-680 p:has(> button.pushbutton-wide),
body.postid-680.single-product #contact-form-680 p:has(> input[type="submit"]) {
    display: block !important;
    margin: 0 !important;
}

/* Le bouton lui-même */
body.postid-680.single-product #contact-form-680 .pushbutton-wide,
body.postid-680.single-product #contact-form-680 button[type="submit"],
body.postid-680.single-product #contact-form-680 input[type="submit"] {
    display: inline-block !important;
}

/* =========================================================
   JUDEBOX - CONFIRMATION JETPACK PRODUIT 680
   Option B :
   - style propre du message de confirmation
   - bouton Envoyer masqué après succès
   - champs masqués après succès
   - bouton Retour stylé
   ========================================================= */

/* Bloc global de confirmation */
body.postid-680.single-product #contact-form-680 .contact-form-submission,
body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission {
    display: block !important;
    background: rgba(235, 245, 255, 0.96) !important;
    border: 1px solid rgba(22, 58, 89, 0.10) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    margin-top: 18px !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
    color: #102133 !important;
    box-sizing: border-box !important;
}

/* Titre de confirmation */
body.postid-680.single-product #contact-form-680 .contact-form-submission h4,
body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission h4 {
    color: #163a59 !important;
    font-size: 1.45rem !important;
    line-height: 1.25 !important;
    margin: 0 0 18px 0 !important;
    text-align: center !important;
}

/* Bouton / lien Retour */
body.postid-680.single-product #contact-form-680 .go-back-message {
    margin: 0 0 18px 0 !important;
    text-align: center !important;
}

body.postid-680.single-product #contact-form-680 .go-back-message .link {
    display: inline-block !important;
    background: #163a59 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 10px !important;
    padding: 10px 16px !important;
    font-weight: 700 !important;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.14) !important;
}

body.postid-680.single-product #contact-form-680 .go-back-message .link:hover,
body.postid-680.single-product #contact-form-680 .go-back-message .link:focus {
    background: #224d73 !important;
    color: #ffffff !important;
}

/* Lignes récapitulatives des champs envoyés */
body.postid-680.single-product #contact-form-680 .field-name-wrapper {
    display: grid !important;
    grid-template-columns: 28px 180px 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    background: rgba(255, 255, 255, 0.80) !important;
    border: 1px solid rgba(16, 33, 51, 0.08) !important;
    border-radius: 12px !important;
    padding: 14px 16px !important;
    margin-bottom: 12px !important;
    box-sizing: border-box !important;
}

/* Icône */
body.postid-680.single-product #contact-form-680 .field-type-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    color: #163a59 !important;
    margin-top: 1px !important;
}

body.postid-680.single-product #contact-form-680 .field-type-icon svg {
    width: 20px !important;
    height: 20px !important;
    fill: currentColor !important;
}

/* Nom du champ */
body.postid-680.single-product #contact-form-680 .field-name {
    color: #163a59 !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Valeur du champ */
body.postid-680.single-product #contact-form-680 .field-value,
body.postid-680.single-product #contact-form-680 .field-value-wrapper,
body.postid-680.single-product #contact-form-680 .contact-form-submission p,
body.postid-680.single-product #contact-form-680 .contact-form-submission li,
body.postid-680.single-product #contact-form-680 .contact-form-submission span {
    color: #102133 !important;
    line-height: 1.6 !important;
}

/* Nettoyage des p vides parasites */
body.postid-680.single-product #contact-form-680 .field-name-wrapper > p:empty,
body.postid-680.single-product #contact-form-680 .contact-form-submission > p:empty,
body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission > p:empty {
    display: none !important;
}

/* Succès : cacher les champs du formulaire */
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-textarea-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-checkbox-multiple-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-select-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-date-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-phone-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-name-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .grunion-field-email-wrap,
body.postid-680.single-product #contact-form-680 form.submission-success .contact-form__error {
    display: none !important;
}

/* Succès : cacher le bouton Envoyer */
body.postid-680.single-product #contact-form-680 form.submission-success .contact-submit,
body.postid-680.single-product #contact-form-680 form.submission-success p.contact-submit,
body.postid-680.single-product #contact-form-680 form.submission-success .pushbutton-wide,
body.postid-680.single-product #contact-form-680 form.submission-success button[type="submit"],
body.postid-680.single-product #contact-form-680 form.submission-success input[type="submit"] {
    display: none !important;
}

/* Responsive */
@media (max-width: 767px) {
    body.postid-680.single-product #contact-form-680 .contact-form-submission,
    body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission {
        padding: 18px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product #contact-form-680 .field-name-wrapper {
        grid-template-columns: 24px 1fr !important;
        gap: 10px !important;
    }

    body.postid-680.single-product #contact-form-680 .field-name {
        grid-column: 2 !important;
    }
}

/* Cache le bouton Retour après succès */
body.postid-680.single-product #contact-form-680 .go-back-message,
body.postid-680.single-product #contact-form-680 .go-back-message .link {
    display: none !important;
}
/* Cache complètement le bloc de confirmation Jetpack */
body.postid-680.single-product #contact-form-680 .contact-form-submission,
body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission {
    display: none !important;
}
body.postid-680.single-product #contact-form-680 .contact-form-submission,
body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}



/* =========================================================
   JUDEBOX - PATCH RESPONSIVE FINAL
   Objectif :
   - améliorer tablette et cellulaire
   - ne pas toucher au rendu ordinateur
   - pages visées : Accueil, Produit 680, Contact, À propos
   ========================================================= */

/* ===== TABLETTE ===== */
@media (max-width: 1024px) {

    /* Accueil */
    body.home .entry-content > .wp-block-group,
    body.home .entry-content > .wp-block-cover,
    body.home .entry-content > .wp-block-columns {
        padding-left: 28px !important;
        padding-right: 28px !important;
    }

    body.home h1,
    body.home .entry-content :where(h1) {
        font-size: 2.65rem !important;
        line-height: 1.12 !important;
    }

    body.home h2,
    body.home .entry-content :where(h2) {
        font-size: 2.05rem !important;
        line-height: 1.18 !important;
    }

    body.home h3,
    body.home .entry-content :where(h3) {
        font-size: 1.55rem !important;
        line-height: 1.22 !important;
    }

    body.home .wp-block-buttons,
    body.home .wp-block-button {
        width: 100% !important;
    }

    body.home .wp-block-button .wp-block-button__link,
    body.home .ast-outline-button,
    body.home .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button {
        width: 100% !important;
        text-align: center !important;
    }

    body.home .wp-block-media-text,
    body.home .wp-block-columns {
        gap: 18px !important;
    }

    /* Produit 680 */
    body.postid-680.single-product #product-680 {
        display: block !important;
        padding: 22px !important;
        border-radius: 18px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-product-gallery,
    body.postid-680.single-product #product-680 .summary.entry-summary,
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        width: 100% !important;
        margin: 0 0 18px 0 !important;
        position: static !important;
        top: auto !important;
    }

    body.postid-680.single-product #product-680 .summary.entry-summary {
        padding: 20px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 0 !important;
        padding: 20px !important;
    }

    body.postid-680.single-product #contact-form-680 .contact-form,
    body.postid-680.single-product #contact-form-680 .jetpack-contact-form__form {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-field-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-textarea-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-checkbox-multiple-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-select-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-date-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-phone-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-name-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-email-wrap,
    body.postid-680.single-product #contact-form-680 .grunion-field-text-wrap {
        grid-column: 1 / -1 !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.95rem !important;
        line-height: 1.15 !important;
    }

    body.postid-680.single-product #contact-form-680 .pushbutton-wide,
    body.postid-680.single-product #contact-form-680 button[type="submit"],
    body.postid-680.single-product #contact-form-680 input[type="submit"] {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.postid-680.single-product #contact-form-680 .contact-form-submission,
    body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission,
    body.postid-680.single-product #contact-form-680 .contact-form-submission.submission-success {
        padding: 20px !important;
        border-radius: 16px !important;
    }

    /* Contact */
    body.page-id-360 article#post-360 .entry-content {
        padding: 24px !important;
    }

    body.page-id-360 .entry-content .wp-elements-67463b14d04b5cb1b62206ce288d17d2,
    body.page-id-360 .entry-content p.has-x-large-font-size.has-text-align-center {
        font-size: 1.9rem !important;
        line-height: 1.2 !important;
    }

    body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
    body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background {
        padding: 22px 18px !important;
        line-height: 1.7 !important;
        overflow-wrap: anywhere !important;
    }

    /* À propos */
    body.page-id-1 article#post-1 .entry-content {
        padding: 24px !important;
    }

    body.page-id-1 .entry-content .wp-elements-741b5606e748968407385ad3676ba5e3,
    body.page-id-1 .entry-content h2.wp-block-heading.has-text-align-center.has-background {
        font-size: 1.9rem !important;
        line-height: 1.2 !important;
    }

    body.page-id-1 .entry-content {
        overflow-wrap: anywhere !important;
    }
}

/* ===== CELLULAIRE ===== */
@media (max-width: 767px) {

    /* Accueil */
    body.home .entry-content > .wp-block-group,
    body.home .entry-content > .wp-block-cover,
    body.home .entry-content > .wp-block-columns {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 28px !important;
        padding-bottom: 28px !important;
    }

    body.home h1,
    body.home .entry-content :where(h1) {
        font-size: 2.1rem !important;
        line-height: 1.1 !important;
    }

    body.home h2,
    body.home .entry-content :where(h2) {
        font-size: 1.7rem !important;
        line-height: 1.14 !important;
    }

    body.home h3,
    body.home .entry-content :where(h3) {
        font-size: 1.3rem !important;
        line-height: 1.2 !important;
    }

    body.home .wp-block-buttons,
    body.home .wp-block-button {
        width: 100% !important;
    }

    body.home .wp-block-button .wp-block-button__link,
    body.home .ast-outline-button,
    body.home .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button {
        width: 100% !important;
        text-align: center !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    body.home .wp-block-columns > .wp-block-column,
    body.home .fond-blanc-judebox,
    body.home .fond-blanc-judebox-transparent {
        border-radius: 10px !important;
    }

    /* Produit 680 */
    body.postid-680.single-product #product-680 {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product #product-680 .woocommerce-product-gallery,
    body.postid-680.single-product #product-680 .summary.entry-summary,
    body.postid-680.single-product #product-680 .woocommerce-tabs.wc-tabs-wrapper,
    body.postid-680.single-product #product-680 .woocommerce-tabs .panel {
        padding: 14px !important;
        border-radius: 14px !important;
    }

    body.postid-680.single-product .product_title {
        font-size: 1.55rem !important;
        line-height: 1.12 !important;
    }

    body.postid-680.single-product #contact-form-680 {
        margin-top: 18px !important;
    }

    body.postid-680.single-product #contact-form-680 .contact-form,
    body.postid-680.single-product #contact-form-680 .jetpack-contact-form__form {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.postid-680.single-product #contact-form-680 input[type="text"],
    body.postid-680.single-product #contact-form-680 input[type="email"],
    body.postid-680.single-product #contact-form-680 input[type="tel"],
    body.postid-680.single-product #contact-form-680 input[type="number"],
    body.postid-680.single-product #contact-form-680 input[type="date"],
    body.postid-680.single-product #contact-form-680 select,
    body.postid-680.single-product #contact-form-680 textarea {
        font-size: 16px !important;
    }

    body.postid-680.single-product #contact-form-680 .pushbutton-wide,
    body.postid-680.single-product #contact-form-680 button[type="submit"],
    body.postid-680.single-product #contact-form-680 input[type="submit"] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 14px 0 0 0 !important;
        padding: 16px 18px !important;
        font-size: 1.02rem !important;
    }

    body.postid-680.single-product #contact-form-680 .grunion-checkbox-multiple-options {
        flex-direction: column !important;
        gap: 10px !important;
    }

    body.postid-680.single-product #contact-form-680 .contact-form-submission.submission-success::before,
    body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission.submission-success::before,
    body.postid-680.single-product #contact-form-680 .contact-form-submission[aria-hidden="false"]::before,
    body.postid-680.single-product #contact-form-680 .contact-form-ajax-submission[aria-hidden="false"]::before {
        font-size: 1rem !important;
        line-height: 1.55 !important;
    }

    /* Contact */
    body.page-id-360 article#post-360 .entry-content {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.page-id-360 .entry-content .wp-elements-67463b14d04b5cb1b62206ce288d17d2,
    body.page-id-360 .entry-content p.has-x-large-font-size.has-text-align-center {
        font-size: 1.45rem !important;
        line-height: 1.2 !important;
        padding: 14px 16px !important;
    }

    body.page-id-360 .entry-content .wp-elements-c8327849c1f4aab41f64d4a097655a4e,
    body.page-id-360 .entry-content p.has-medium-font-size.has-text-align-center.has-background {
        padding: 16px 14px !important;
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }

    /* À propos */
    body.page-id-1 article#post-1 .entry-content {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    body.page-id-1 .entry-content .wp-elements-741b5606e748968407385ad3676ba5e3,
    body.page-id-1 .entry-content h2.wp-block-heading.has-text-align-center.has-background {
        font-size: 1.45rem !important;
        line-height: 1.2 !important;
        padding: 14px 16px !important;
    }

    body.page-id-1 .entry-content,
    body.page-id-1 .entry-content p,
    body.page-id-1 .entry-content li,
    body.page-id-360 .entry-content,
    body.page-id-360 .entry-content p,
    body.page-id-360 .entry-content li {
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }
}



/* =========================================================
   JUDEBOX - BOUTONS CTA ACCUEIL / PAGES
   Ajuste les boutons Gutenberg pointant vers la réservation
   sans briser les autres boutons du site
   ========================================================= */

/* Base : boutons CTA vers la page réservation */
a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"],
a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 64px !important;
    padding: 1.15rem 2rem !important;
    border-radius: 14px !important;
    border: 2px solid #c99716 !important;
    background: linear-gradient(180deg, #e5b32a 0%, #c99716 100%) !important;
    color: #ffffff !important;
    text-align: center !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18) !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"] strong {
    color: inherit !important;
    font-weight: 700 !important;
}

a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:hover,
a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:focus {
    background: linear-gradient(180deg, #efbf3b 0%, #d4a11d 100%) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.20) !important;
}

/* Version courte */
a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:not(.has-text-align-center) {
    min-width: 280px !important;
    font-size: 1.08rem !important;
}

/* Version longue centrée */
a.wp-block-button__link.has-text-align-center[href="https://judeboxexperience.com/product/equipment-rental/"] {
    width: min(100%, 760px) !important;
    min-height: 76px !important;
    padding: 1.35rem 2.2rem !important;
    font-size: 1.08rem !important;
    line-height: 1.35 !important;
}

/* Le bloc parent garde le bouton proprement aligné */
.wp-block-button:has(> a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]) {
    width: 100% !important;
}

.wp-block-buttons:has(a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]) {
    gap: 14px !important;
}

/* Tablette */
@media (max-width: 1024px) {
    a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"],
    a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:visited {
        min-height: 60px !important;
        padding: 1rem 1.5rem !important;
        border-radius: 12px !important;
    }

    a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:not(.has-text-align-center) {
        min-width: 240px !important;
        font-size: 1rem !important;
    }

    a.wp-block-button__link.has-text-align-center[href="https://judeboxexperience.com/product/equipment-rental/"] {
        width: 100% !important;
        min-height: 70px !important;
        font-size: 1rem !important;
        padding: 1rem 1.4rem !important;
    }
}

/* Cellulaire */
@media (max-width: 767px) {
    a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"],
    a.wp-block-button__link[href="https://judeboxexperience.com/product/equipment-rental/"]:visited,
    a.wp-block-button__link.has-text-align-center[href="https://judeboxexperience.com/product/equipment-rental/"] {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 58px !important;
        padding: 0.95rem 1rem !important;
        font-size: 0.98rem !important;
        line-height: 1.3 !important;
        border-radius: 12px !important;
    }
}

/* ===== FIX LARGEUR MOBILE GLOBALE ===== */
@media (max-width: 544px) {

    /* Conteneur principal plus large */
    .ast-separate-container #content .ast-container,
    .site-content .ast-container,
    .ast-container {
        padding-left: 10px !important;
        padding-right: 10px !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Contenu Gutenberg moins serré */
    :root {
        --wp--custom--ast-default-block-left-padding: 12px !important;
        --wp--custom--ast-default-block-right-padding: 12px !important;
    }

    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Évite qu’un wrapper interne rétrécisse trop */
    .entry-content,
    #primary,
    .site-main {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ===== FIX LARGEUR MOBILE RÉELLE DES BLOCS ===== */
@media (max-width: 544px) {

    /* On laisse le conteneur parent prendre toute la largeur */
    .ast-separate-container #content .ast-container,
    .site-content .ast-container,
    #primary,
    .site-main,
    .entry-content {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Le vrai fix : les blocs Gutenberg directs prennent toute la largeur */
    .entry-content[data-ast-blocks-layout] > * {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* On réduit le padding latéral automatique Astra */
    :root {
        --wp--custom--ast-default-block-left-padding: 12px !important;
        --wp--custom--ast-default-block-right-padding: 12px !important;
    }

    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Si certaines sections ont un fond/boîte, elles prennent aussi toute la largeur */
    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns,
    .entry-content > .wp-block-buttons {
        box-sizing: border-box !important;
    }
}