/* Finition premium : pages WooCommerce (fiche, panier, paiement, compte), titres, prix, formulaires, détails. Tailles en px. */

/* ---------- Titres de page ---------- */
body.pv-theme.woocommerce-cart #main h2.entry-title,body.pv-theme.woocommerce-checkout #main h2.entry-title,body.pv-theme.woocommerce-account #main h2.entry-title,body.pv-theme .pv-page-title,body.pv-theme.page #main .entry-title{font-family:var(--pv-font-head);font-weight:400;font-size:clamp(34px,26px + 2vw,52px);letter-spacing:-.02em;text-transform:none;line-height:1.1;margin:0 0 28px}
body.pv-theme.woocommerce-page #content-wrap{padding-top:44px;padding-bottom:64px}

/* ---------- Prix : couleur du texte, plus la couleur verte d'origine ---------- */
body.pv-theme .woocommerce-Price-amount,body.pv-theme .amount,body.pv-theme .woocommerce-Price-currencySymbol{color:var(--pv-text)!important}
body.pv-theme div.product p.price,body.pv-theme div.product span.price{color:var(--pv-text);font-family:var(--pv-font-head);font-weight:500;font-size:34px;letter-spacing:-.01em}

/* ---------- Fiche produit ---------- */
body.pv-theme div.product .product_title{font-family:var(--pv-font-head);font-weight:400;font-size:clamp(28px,22px + 1.4vw,40px);letter-spacing:-.015em;text-transform:none;line-height:1.15}
/* Galerie : zone studio blanche derrière la photo principale et derrière chaque vignette ; le crème du site reste entre les deux. */
body.pv-theme div.product .woocommerce-product-gallery{background:transparent;border-radius:0;overflow:visible}
body.pv-theme div.product .woocommerce-product-gallery .flex-viewport,body.pv-theme div.product .woocommerce-product-gallery:not(:has(.flex-viewport)) .woocommerce-product-gallery__wrapper{background:var(--pv-studio);border-radius:2px;box-shadow:0 10px 30px rgb(30 22 15/.045),0 0 0 1px rgb(30 22 15/.035)}
body.pv-theme div.product .woocommerce-product-gallery .flex-control-thumbs img{background:var(--pv-studio);border-radius:2px;box-shadow:0 0 0 1px rgb(30 22 15/.06)}
body.pv-theme div.product .woocommerce-product-gallery img{opacity:1;filter:none;mix-blend-mode:normal}
body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs{border:0;border-bottom:1px solid var(--pv-line);padding:0;margin:0 0 28px;display:flex;gap:6px;flex-wrap:wrap}
body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li{border:0!important;background:none!important;margin:0}
body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:14px 18px;font:600 12.5px var(--pv-font-body);letter-spacing:.11em;text-transform:uppercase;color:var(--pv-muted)!important;border-bottom:2px solid transparent}
body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li.active a,body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--pv-text)!important;border-bottom-color:var(--pv-accent)!important}
body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs::before,body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li::before,body.pv-theme .woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
body.pv-theme div.product .related.products>h2,body.pv-theme div.product .up-sells>h2{font-family:var(--pv-font-head);font-weight:400;font-size:clamp(26px,22px + 1vw,34px);text-transform:none;margin:56px 0 24px;padding-bottom:16px;border-bottom:1px solid var(--pv-text)}

/* ---------- Quantité : pas à pas ---------- */
body.pv-theme .quantity{display:inline-flex;align-items:stretch;border:1px solid var(--pv-field);border-radius:2px;background:var(--pv-surface);overflow:hidden}
body.pv-theme .quantity .qty{width:56px;min-height:50px;border:0!important;border-radius:0!important;text-align:center;background:transparent!important;box-shadow:none;padding:0}
body.pv-theme .quantity .minus,body.pv-theme .quantity .plus{width:44px;min-height:50px;border:0!important;background:var(--pv-surface-2)!important;color:var(--pv-text)!important;font-size:18px;line-height:1;cursor:pointer;padding:0;transition:background .2s}
body.pv-theme .quantity .minus:hover,body.pv-theme .quantity .plus:hover{background:var(--pv-line)!important}

/* ---------- Tableaux (panier, commande) ---------- */
body.pv-theme table.shop_table{border:0;border-collapse:collapse;background:transparent;width:100%}
body.pv-theme table.shop_table thead th{background:none;border:0;border-bottom:1px solid var(--pv-text);padding:0 12px 14px;font:600 11.5px var(--pv-font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--pv-muted)}
body.pv-theme table.shop_table td,body.pv-theme table.shop_table th{border:0;border-bottom:1px solid var(--pv-line);background:transparent;padding:20px 12px;vertical-align:middle}
body.pv-theme table.shop_table .product-name a{color:var(--pv-text)!important;font-weight:500;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .3s}
body.pv-theme table.shop_table .product-name a:hover{background-size:100% 1px}
body.pv-theme table.shop_table .product-thumbnail img{width:76px;border-radius:2px;background:var(--pv-studio)}
body.pv-theme table.shop_table a.remove{width:32px;height:32px;line-height:30px;border:1px solid var(--pv-line);border-radius:50%;background:transparent;color:var(--pv-muted)!important;font-size:18px;transition:all .2s}
body.pv-theme table.shop_table a.remove:hover{background:var(--pv-text)!important;color:var(--pv-on-ink)!important;border-color:var(--pv-text)}
body.pv-theme .cart_totals,body.pv-theme .woocommerce-checkout-review-order{background:var(--pv-surface);border:1px solid var(--pv-line);border-radius:2px;padding:28px}
body.pv-theme .cart_totals>h2,body.pv-theme #order_review_heading,body.pv-theme .woocommerce-billing-fields>h3,body.pv-theme #ship-to-different-address{font-family:var(--pv-font-head);font-weight:400;font-size:26px;text-transform:none;letter-spacing:-.01em;margin:0 0 20px}
body.pv-theme .cart_totals table.shop_table th,body.pv-theme .woocommerce-checkout-review-order-table th{color:var(--pv-muted);font-weight:500;text-transform:none;letter-spacing:0;font-size:15px}
body.pv-theme .order-total .amount{font-family:var(--pv-font-head);font-size:26px}
body.pv-theme .wc-proceed-to-checkout a.checkout-button{width:100%;min-height:58px}
body.pv-theme .woocommerce-cart-form .actions{padding-top:24px}
body.pv-theme .woocommerce-cart-form .coupon input.input-text{min-height:50px;width:200px}

/* ---------- Paiement ---------- */
body.pv-theme #payment{background:transparent;border-radius:0}
body.pv-theme #payment ul.payment_methods{border:0;padding:0;margin:0 0 20px}
body.pv-theme #payment ul.payment_methods li{border:1px solid var(--pv-line);border-radius:2px;background:var(--pv-surface);padding:16px 18px;margin:0 0 10px;list-style:none}
body.pv-theme #payment ul.payment_methods li label{font-weight:600;color:var(--pv-text)}
body.pv-theme #payment div.payment_box{background:var(--pv-surface-2);color:var(--pv-muted);font-size:14px;border-radius:2px;margin-top:12px}
body.pv-theme #payment div.payment_box::before{display:none}
body.pv-theme #place_order{width:100%;min-height:60px;font-size:13px}
body.pv-theme .woocommerce-checkout .form-row label{font-size:13.5px}
body.pv-theme .woocommerce-checkout .woocommerce-info,body.pv-theme .woocommerce-checkout .woocommerce-message{text-transform:none;letter-spacing:0;font-size:14.5px;text-align:left}
body.pv-theme .woocommerce-checkout .woocommerce-info a{font-weight:600}
body.pv-theme .woocommerce-shipping-methods li label{font-weight:500;font-size:14.5px;text-transform:none}
body.pv-theme input[type=radio]{accent-color:var(--pv-accent)}
body.pv-theme .pv-majority{margin:0 0 18px}

/* ---------- Compte ---------- */
body.pv-theme .woocommerce-account .u-columns .u-column1,body.pv-theme .woocommerce-account .u-columns .u-column2{background:var(--pv-surface);border:1px solid var(--pv-line);border-radius:2px;padding:32px}
body.pv-theme .woocommerce-account h2{font-family:var(--pv-font-head);font-weight:400;font-size:28px;text-transform:none;letter-spacing:-.01em}
body.pv-theme .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--pv-line)}
body.pv-theme .woocommerce-MyAccount-navigation li a{display:block;padding:14px 4px;border-bottom:1px solid var(--pv-line);color:var(--pv-text)!important;text-decoration:none}
body.pv-theme .woocommerce-MyAccount-navigation li.is-active a{color:var(--pv-accent-text)!important;font-weight:600}

/* ---------- Bouton « Gérer le consentement » (Complianz) : discret, en bas à gauche ---------- */
body.pv-theme #cmplz-manage-consent .cmplz-manage-consent{left:16px!important;right:auto!important;bottom:16px!important;padding:8px 14px!important;font:500 12px var(--pv-font-body)!important;border-radius:2px!important;background:var(--pv-ink)!important;color:var(--pv-on-ink-muted)!important;border:1px solid rgb(245 240 232/.25)!important;box-shadow:none!important}

/* ---------- Détails : sélection et défilement ---------- */
::selection{background:var(--pv-accent);color:#fff}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- Corrections après relecture visuelle ---------- */
body.pv-theme #main h1,body.pv-theme #main h2.entry-title,body.pv-theme #main .page-title,body.pv-theme #main .entry-title{text-transform:none!important}
body.pv-theme.woocommerce-checkout #main h3,body.pv-theme.woocommerce-checkout #main #order_review_heading,body.pv-theme.woocommerce-checkout #main #ship-to-different-address{font-family:var(--pv-font-head)!important;font-weight:400!important;font-size:26px!important;text-transform:none!important;letter-spacing:-.01em!important;color:var(--pv-text)!important;border:0}
body.pv-theme .woocommerce-checkout #main .woocommerce-info,body.pv-theme .woocommerce-checkout #main .woocommerce-message{text-transform:none!important;letter-spacing:0!important;text-align:left!important;font-size:14.5px!important}
body.pv-theme .woocommerce-checkout-review-order-table thead th,body.pv-theme .woocommerce-checkout-review-order-table tbody td,body.pv-theme .woocommerce-checkout-review-order-table tfoot th,body.pv-theme .woocommerce-checkout-review-order-table tfoot td,body.pv-theme .cart_totals table.shop_table th,body.pv-theme .cart_totals table.shop_table td,body.pv-theme .woocommerce-cart-form table.shop_table thead th{background:transparent!important}
body.pv-theme #shipping_method li label,body.pv-theme .woocommerce-shipping-methods li label{font-weight:500!important;text-transform:none!important;font-size:14.5px!important;color:var(--pv-text)!important}
body.pv-theme #payment input[type=radio],body.pv-theme #shipping_method input[type=radio]{accent-color:var(--pv-accent)}
body.pv-theme #payment input[type=radio]:checked::before,body.pv-theme #shipping_method input[type=radio]:checked::before{background:var(--pv-accent)!important;border-color:var(--pv-accent)!important}
body.pv-theme #payment input[type=radio]:checked{border-color:var(--pv-accent)!important}
body.pv-theme #payment ul.payment_methods li label{text-transform:none!important;letter-spacing:0!important;font-size:15px}
body.pv-theme.woocommerce-checkout #main .woocommerce-info,body.pv-theme.woocommerce-checkout #main .woocommerce-message{text-transform:none!important;letter-spacing:0!important;text-align:left!important;font-size:14.5px!important}
body.pv-theme #payment input[type=radio],body.pv-theme #shipping_method input[type=radio]{-webkit-appearance:radio!important;appearance:auto!important;width:18px;height:18px;margin-right:10px;accent-color:var(--pv-accent);vertical-align:middle}
body.pv-theme #payment input[type=radio]::before,body.pv-theme #shipping_method input[type=radio]::before{display:none!important}

/* ---------- Fiche produit : titre, onglets, variantes ---------- */
body.pv-theme #main div.product .product_title{text-transform:none!important;font-family:var(--pv-font-head)!important;font-weight:400!important;font-size:clamp(28px,22px + 1.4vw,40px)!important;letter-spacing:-.015em!important;line-height:1.15!important;padding-right:96px;margin-bottom:12px}
body.pv-theme #main .woocommerce-tabs ul.tabs{border-top:0!important;border-bottom:1px solid var(--pv-line)!important;background:none!important}
body.pv-theme #main .woocommerce-tabs ul.tabs li a{border:0!important;border-bottom:2px solid transparent!important;background:none!important;color:var(--pv-muted)!important}
body.pv-theme #main .woocommerce-tabs ul.tabs li.active a,body.pv-theme #main .woocommerce-tabs ul.tabs li a:hover{color:var(--pv-text)!important;border-bottom-color:var(--pv-accent)!important}
body.pv-theme #main table.woocommerce-product-attributes,body.pv-theme #main table.woocommerce-product-attributes th,body.pv-theme #main table.woocommerce-product-attributes td{border-color:var(--pv-line)!important;background:transparent!important}
body.pv-theme .variable-items-wrapper .variable-item{border:1px solid var(--pv-field)!important;border-radius:2px!important;box-shadow:none!important;background:var(--pv-surface)!important;color:var(--pv-text)!important;min-width:56px;height:46px;padding:0 16px;font:500 14px var(--pv-font-body);letter-spacing:.04em;transition:background .2s,color .2s,border-color .2s}
body.pv-theme .variable-items-wrapper .variable-item:hover{border-color:var(--pv-text)!important}
body.pv-theme .variable-items-wrapper .variable-item.selected{background:var(--pv-ink)!important;color:var(--pv-on-ink)!important;border-color:var(--pv-ink)!important}
body.pv-theme .variable-items-wrapper .variable-item.disabled{opacity:.45}
body.pv-theme table.variations th.label,body.pv-theme table.variations .label label{font:600 12px var(--pv-font-body)!important;letter-spacing:.12em;text-transform:uppercase!important;color:var(--pv-muted)!important}
body.pv-theme .woo-selected-variation-item-name{font-weight:500;text-transform:none;letter-spacing:0;color:var(--pv-text)}
body.pv-theme .reset_variations{color:var(--pv-muted)!important;font-size:13px}
.pv-reg>*:last-child{margin-bottom:0}

/* Titres de page saisis en majuscules (PANIER, MON COMPTE…) : rendus en casse de phrase */
body.pv-theme #main h1.pv-page-title{text-transform:lowercase!important}
body.pv-theme #main h1.pv-page-title::first-letter{text-transform:uppercase}
/* Icônes d'origine des blocs de contact : couleur de la marque plutôt que le bleu par défaut d'Elementor */
body.pv-theme #main .elementor-icon,body.pv-theme #main .elementor-icon svg{color:var(--pv-accent)!important;fill:var(--pv-accent)!important}
body.pv-theme #main .elementor-icon-box-title,body.pv-theme #main .elementor-widget-icon-box .elementor-icon-box-title a{color:var(--pv-text)!important}
body.pv-theme #main .frm_forms label,body.pv-theme #main .frm_primary_label{color:var(--pv-text)!important;font-weight:500}

/* ---------- Correctifs finaux (contenus d'origine) ---------- */
body.pv-theme #main .legal-links p{color:var(--pv-on-ink-muted)!important}
body.pv-theme .theme-selectInner,body.pv-theme .woocommerce-ordering select{color:var(--pv-muted)!important}
@media (max-width:900px){body.pv-theme #main aside.toc,body.pv-theme #main .toc{position:static!important;width:100%!important;max-width:100%!important;box-sizing:border-box}body.pv-theme #main .toc *{max-width:100%;box-sizing:border-box}}
body.pv-theme.woocommerce-checkout input[type=checkbox]{-webkit-appearance:checkbox!important;appearance:auto!important;width:18px;height:18px;accent-color:var(--pv-accent)}
body.pv-theme.woocommerce-checkout input[type=checkbox]::before,body.pv-theme.woocommerce-checkout input[type=checkbox]::after{display:none!important}
body.pv-theme div.product .flex-control-thumbs img{opacity:.8;transition:opacity .3s}
body.pv-theme div.product .flex-control-thumbs img.flex-active,body.pv-theme div.product .flex-control-thumbs img:hover{opacity:1}
