/* =========================
   RESET FORMNATOR EFFECTS
========================= */

/* Désactive les pseudo-éléments animés */
button.forminator-button.forminator-button-submit::before,
button.forminator-button.forminator-button-submit::after,
.forminator-field button.forminator-button.forminator-button-submit::before,
.forminator-field button.forminator-button.forminator-button-submit::after,
button.forminator-button.forminator-button-submit span::before,
button.forminator-button.forminator-button-submit span::after,
.forminator-field button.forminator-button.forminator-button-submit span::before,
.forminator-field button.forminator-button.forminator-button-submit span::after {
    content: none !important;
    display: none !important;
    transform: none !important;
    animation: none !important;
    background: transparent !important;
}

/* Désactive le span décoratif */
button.forminator-button.forminator-button-submit span[aria-hidden="true"],
.forminator-field button.forminator-button.forminator-button-submit span[aria-hidden="true"] {
    display: none !important;
}

/* =========================
   STYLE DU BOUTON
========================= */

/* Bouton normal */
button.forminator-button.forminator-button-submit,
.forminator-field button.forminator-button.forminator-button-submit {
    background: #FFD700 !important;
    color: #ffffff !important;
    border: none !important;
    border-color: #FFD700 !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    font-weight: 600 !important;
    overflow: hidden !important;
    position: relative !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* Hover */
button.forminator-button.forminator-button-submit:hover,
.forminator-field button.forminator-button.forminator-button-submit:hover {
    background: #000000 !important; /* noir */
    color: #FFD700 !important; /* jaune */
    border-color: #000000 !important;
}

/* Focus / Active (important pour éviter retour blanc) */
button.forminator-button.forminator-button-submit:focus,
button.forminator-button.forminator-button-submit:active,
.forminator-field button.forminator-button.forminator-button-submit:focus,
.forminator-field button.forminator-button.forminator-button-submit:active {
    background: #000000 !important;
    color: #FFD700 !important;
    outline: none !important;
}

/* Texte interne */
button.forminator-button.forminator-button-submit span,
.forminator-field button.forminator-button.forminator-button-submit span {
    color: inherit !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Désactive transitions parasites internes */
button.forminator-button.forminator-button-submit *,
.forminator-field button.forminator-button.forminator-button-submit * {
    transition: none !important;
    animation: none !important;
}


/* =========================
   RESET EFFETS FORMNATOR
========================= */

/* Désactive les pseudo-éléments parasites */
button.forminator-button.forminator-button-next::before,
button.forminator-button.forminator-button-next::after,
button.forminator-button.forminator-button-back::before,
button.forminator-button.forminator-button-back::after,
button.forminator-button.forminator-button-next span::before,
button.forminator-button.forminator-button-next span::after,
button.forminator-button.forminator-button-back span::before,
button.forminator-button.forminator-button-back span::after {
    content: none !important;
    display: none !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    background: transparent !important;
}

/* Désactive le masque animé */
button.forminator-button.forminator-button-next .forminator-button--mask,
button.forminator-button.forminator-button-back .forminator-button--mask {
    display: none !important;
    width: 0 !important;
    opacity: 0 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* =========================
   STYLE BOUTONS NEXT / BACK
========================= */

button.forminator-button.forminator-button-next,
button.forminator-button.forminator-button-back {
    background: #FFD700 !important;
    color: #ffffff !important;
    border: none !important;
    border-color: #FFD700 !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    font-weight: 600 !important;
    overflow: hidden !important;
    position: relative !important;
    box-shadow: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

/* Hover */
button.forminator-button.forminator-button-next:hover,
button.forminator-button.forminator-button-back:hover {
    background: #000000 !important;
    color: #FFD700 !important;
    border-color: #000000 !important;
}

/* Focus + Active */
button.forminator-button.forminator-button-next:focus,
button.forminator-button.forminator-button-next:active,
button.forminator-button.forminator-button-back:focus,
button.forminator-button.forminator-button-back:active {
    background: #000000 !important;
    color: #FFD700 !important;
    border-color: #000000 !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Texte interne */
button.forminator-button.forminator-button-next .forminator-button--text,
button.forminator-button.forminator-button-back .forminator-button--text {
    color: inherit !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Désactive animations internes */
button.forminator-button.forminator-button-next *,
button.forminator-button.forminator-button-back * {
    animation: none !important;
}

.section-subtitle.dark_subtitle {
    color: #000 !important;
}


body.post-type-archive-product .header-title-breadcrumb {
    display: none !important;
}



/* =========================================
   PAGE PRODUIT WOO - STYLE FINAL CORRIGÉ
========================================= */

/* =========================
   TITRE PRODUIT EN HAUT
========================= */

/* Conteneur produit devient relatif */
body.single-product div.product {
    position: relative;
}

/* On repositionne le titre */
body.single-product div.product .product_title {
    position: absolute;
    top: -60px;
    left: 0;
    width: 100%;
    font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
    font-weight: 700 !important;
    color: #111 !important;
    margin: 0 !important;
    padding: 0 10px;
}

/* Ajustement mobile */
@media (max-width: 991px) {
    body.single-product div.product .product_title {
        position: relative;
        top: 0;
        margin-bottom: 20px !important;
        padding: 0;
    }
}

/* ====== FOND ====== */
body.single-product {
    background: #f5f5f7;
}

/* ====== SUPPRIMER BREADCRUMB ====== */
body.single-product .header-title-breadcrumb,
body.single-product .header-title-breadcrumb-overlay,
body.single-product .mt-singular-overlay,
body.single-product .woocommerce-breadcrumb {
    display: none !important;
}

/* ====== CONTAINER LARGE RESPONSIVE ====== */
body.single-product .container,
body.single-product .site-content .container,
body.single-product .content-area {
    width: min(95vw, 1500px) !important;
    max-width: 1500px !important;
    margin: auto !important;
}

/* ====== CARTE PRODUIT ====== */
body.single-product div.product {
    background: #fff;
    border-radius: 28px;
    padding: clamp(20px, 3vw, 40px) !important;
    margin: 30px 0;
    box-shadow: 0 12px 40px rgba(0,0,0,0.06);
}

/* ====== IMAGE ====== */
body.single-product .woocommerce-product-gallery {
    background: #f7f7f9;
    border-radius: 20px;
    padding: 15px;
}

body.single-product .woocommerce-product-gallery img {
    border-radius: 16px;
}

/* ====== TITRE ====== */
body.single-product .product_title {
    font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
    font-weight: 700 !important;
    color: #111 !important;
}

/* ====== PRIX ====== */
body.single-product .price {
    color: #d4a900 !important;
    font-weight: 700 !important;
    font-size: 1.4rem !important;
}

/* =========================================
   ZONE VARIATIONS / TAILLE
========================================= */

body.single-product form.variations_form table.variations,
body.single-product form.variations_form table.variations tbody,
body.single-product form.variations_form table.variations tr,
body.single-product form.variations_form table.variations td,
body.single-product form.variations_form table.variations th {
    border: none !important;
    background: transparent !important;
}

/* Afficher clairement le label Taille */
body.single-product form.variations_form table.variations th.label,
body.single-product form.variations_form table.variations td.label,
body.single-product form.variations_form table.variations label,
body.single-product form.variations_form .label label {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #111 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
    text-transform: none !important;
}

body.single-product form.variations_form table.variations th.label {
    width: auto !important;
    padding-bottom: 8px !important;
}

/* SELECT TAILLE - BLANC */
body.single-product form.variations_form select,
body.single-product .value select,
body.single-product td.value select {
    width: min(100%, 420px) !important;
    min-width: 260px !important;
    height: 56px !important;
    border-radius: 16px !important;
    border: 1.5px solid #ddd !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 0 16px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer;
    transition: all 0.2s ease !important;
}

body.single-product form.variations_form select:hover,
body.single-product form.variations_form select:focus,
body.single-product .value select:hover,
body.single-product .value select:focus,
body.single-product td.value select:hover,
body.single-product td.value select:focus {
    border-color: #FFD700 !important;
    box-shadow: 0 0 0 4px rgba(255,215,0,0.15) !important;
}

/* =========================================
   QUANTITÉ
========================================= */
body.single-product .quantity input.qty {
    height: 50px !important;
    border-radius: 14px !important;
    border: 1px solid #ddd !important;
    text-align: center;
    font-weight: 600;
    box-shadow: none !important;
    outline: none !important;
}

/* =========================================
   RESET EFFETS BOUTON AJOUTER AU PANIER
========================================= */

body.single-product .single_add_to_cart_button::before,
body.single-product .single_add_to_cart_button::after,
body.single-product .single_add_to_cart_button span::before,
body.single-product .single_add_to_cart_button span::after,
body.single-product form.cart .button::before,
body.single-product form.cart .button::after,
body.single-product form.cart .button span::before,
body.single-product form.cart .button span::after,
body.single-product button.single_add_to_cart_button::before,
body.single-product button.single_add_to_cart_button::after {
    content: none !important;
    display: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    background: transparent !important;
}

/* =========================================
   BOUTON AJOUTER AU PANIER
========================================= */
body.single-product .single_add_to_cart_button,
body.single-product button.single_add_to_cart_button,
body.single-product form.cart .button {
    background: #FFD700 !important;
    color: #ffffff !important;
    border-radius: 16px !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    border: none !important;
    box-shadow: 0 6px 18px rgba(255,215,0,0.25) !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease !important;
    overflow: hidden !important;
    position: relative !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* Texte interne éventuel */
body.single-product .single_add_to_cart_button *,
body.single-product form.cart .button * {
    color: inherit !important;
    transition: none !important;
    animation: none !important;
}

/* Hover */
body.single-product .single_add_to_cart_button:hover,
body.single-product button.single_add_to_cart_button:hover,
body.single-product form.cart .button:hover {
    background: #000 !important;
    color: #FFD700 !important;
    border-color: #000 !important;
    transform: translateY(-2px);
}

/* Focus / Active */
body.single-product .single_add_to_cart_button:focus,
body.single-product .single_add_to_cart_button:active,
body.single-product button.single_add_to_cart_button:focus,
body.single-product button.single_add_to_cart_button:active,
body.single-product form.cart .button:focus,
body.single-product form.cart .button:active {
    background: #000 !important;
    color: #FFD700 !important;
    border-color: #000 !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(255,215,0,0.18) !important;
}

/* =========================================
   ONGLETS
========================================= */
body.single-product .woocommerce-tabs {
    margin-top: 40px;
    background: #fff;
    border-radius: 24px;
    padding: 25px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.05);
}

body.single-product .woocommerce-tabs ul.tabs li a {
    background: #111;
    color: #FFD700 !important;
    border-radius: 999px;
    padding: 10px 16px !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li a:hover {
    background: #FFD700 !important;
    color: #111 !important;
}

/* =========================================
   PRODUITS SIMILAIRES
========================================= */
body.single-product ul.products li.product {
    background: #fff;
    border-radius: 20px;
    padding: 15px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.05);
    transition: 0.2s;
}

body.single-product ul.products li.product:hover {
    transform: translateY(-3px);
}

/* =========================================
   RESPONSIVE
========================================= */
@media (max-width: 991px) {
    body.single-product .container {
        width: 95vw !important;
    }

    body.single-product .single_add_to_cart_button,
    body.single-product button.single_add_to_cart_button,
    body.single-product form.cart .button {
        width: 100%;
    }

    body.single-product form.variations_form select,
    body.single-product .value select,
    body.single-product td.value select {
        width: 100% !important;
        min-width: 0 !important;
    }
}