/* Infopromo Refonte 1.1 — corrections visuelles : panier visible, boutique mobile, retours d’ajout.
   Chargé après les autres feuilles ; les sélecteurs .ip-refonte gardent la priorité sans réécrire la maquette. */

/* ---------- En-tête : actions toujours visibles ---------- */
.ip-refonte .header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.ip-refonte .navigation{margin-left:auto}

/* ---------- Bouton panier ---------- */
.ip-refonte .ip-live-cart{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 10px 8px 14px;border:1.5px solid #ffffff59;border-radius:999px;color:#fff;font:600 13px/1 Arial,Helvetica,sans-serif;white-space:nowrap;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
.ip-refonte .ip-live-cart svg{flex-shrink:0}
.ip-refonte .ip-live-cart:hover{border-color:#a3c83b;background:#ffffff14;color:#fff}
.ip-refonte .ip-cart-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:12px;background:#ffffff26;color:#fff;font:700 12px/1 Arial,Helvetica,sans-serif}
.ip-refonte .ip-live-cart.has-items{background:#fff;border-color:#fff;color:#20231d}
.ip-refonte .ip-live-cart.has-items:hover{background:#edf2df;border-color:#edf2df;color:#20231d}
.ip-refonte .ip-live-cart.has-items .ip-cart-count{background:#a3c83b;color:#20231d}
.ip-refonte .ip-live-cart.is-bumped{animation:ip-cart-bump .6s ease}
@keyframes ip-cart-bump{0%{transform:scale(1)}30%{transform:scale(1.12)}60%{transform:scale(.96)}100%{transform:scale(1)}}

/* ---------- Bouton menu ---------- */
.ip-refonte .menu-toggle{align-items:center;gap:8px;white-space:nowrap;min-height:44px;padding:8px 12px;border-radius:999px;font:600 13px/1 Arial,Helvetica,sans-serif;color:#fff;background:transparent;border:1.5px solid #ffffff59;cursor:pointer}
.ip-refonte .menu-toggle[aria-expanded=true]{background:#ffffff1f}
@media(max-width:1000px){
 .ip-refonte .menu-toggle{display:inline-flex}
 .ip-refonte .navigation{margin-left:0}
 .ip-refonte .navigation.is-open a{font-size:16px;padding:14px 12px}
 .ip-refonte .navigation.is-open a+a{border-top:1px solid #ffffff14}
 .ip-refonte .navigation.is-open .nav-cta{border-top:0;margin-top:8px;justify-content:center}
}
@media(max-width:600px){
 .ip-refonte .header-inner{gap:12px}
 .ip-refonte .logo{width:150px}
 .ip-refonte .ip-cart-label{display:none}
 .ip-refonte .ip-live-cart{position:relative;padding:0;width:44px;justify-content:center;gap:0}
 .ip-refonte .ip-live-cart .ip-cart-count{position:absolute;top:-6px;right:-7px;min-width:21px;height:21px;padding:0 5px;font-size:11px;box-shadow:0 0 0 2px #20221f}
 .ip-refonte .ip-live-cart:not(.has-items) .ip-cart-count{background:#4a4d46}
 .ip-refonte .menu-toggle{padding:8px 11px}
 .ip-refonte .navigation{padding:12px 20px 20px}
}
@media(max-width:350px){.ip-refonte .logo{width:128px}.ip-refonte .menu-toggle-label{display:none}.ip-refonte .menu-toggle{width:44px;justify-content:center;padding:0}}

/* ---------- Retours d’ajout au panier (catalogue) ---------- */
.ip-refonte .woocommerce a.button.loading{opacity:.65;pointer-events:none}
.ip-refonte .woocommerce a.button.added::before{content:"✓ ";font-weight:700}
.ip-refonte.ip-boutique ul.products li.product a.added_to_cart{display:block;margin:10px 18px 0;padding:10px 8px;border:1.5px solid #a3c83b;border-radius:4px;text-align:center;text-decoration:none;font:600 12px/1.3 Arial,Helvetica,sans-serif;color:#3e5216}
.ip-refonte.ip-boutique ul.products li.product a.added_to_cart:hover{background:#edf2df}

/* ---------- Fiche produit : quantité et bouton côte à côte ---------- */
.ip-refonte .woocommerce div.product form.cart:not(.variations_form):not(.grouped_form),.ip-refonte .woocommerce .woocommerce-variation-add-to-cart{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}
.ip-refonte .woocommerce div.product form.cart:not(.variations_form):not(.grouped_form)::before,.ip-refonte .woocommerce div.product form.cart:not(.variations_form):not(.grouped_form)::after{display:none}
.ip-refonte .woocommerce div.product form.cart div.quantity{float:none;margin:0}
.ip-refonte .woocommerce div.product form.cart .single_add_to_cart_button{float:none;text-align:center!important;justify-content:center;flex:1 1 200px;max-width:340px;min-height:48px;font-size:15px!important}

/* ---------- Toucher : pas d’effet de survol collant ---------- */
@media(hover:none){.ip-refonte.ip-boutique .woocommerce ul.products li.product:hover{transform:none;border-color:var(--ip-line)}}

/* ---------- Boutique sur téléphone ---------- */
@media(max-width:600px){
 /* Introduction plus compacte : les produits apparaissent plus tôt. */
 .ip-refonte.ip-boutique .ip-intro{padding-top:16px}
 .ip-refonte.ip-boutique .ip-breadcrumb{margin-bottom:16px}
 .ip-refonte.ip-boutique .ip-intro h1{font-size:34px;letter-spacing:-.045em}
 .ip-refonte.ip-boutique .ip-intro-row{margin-bottom:18px}
 .ip-refonte.ip-boutique .ip-intro-copy{margin-top:12px}
 .ip-refonte.ip-boutique .ip-intro-copy p{font-size:15px;margin-bottom:8px}
 .ip-refonte.ip-boutique .ip-tools{padding:14px 0;gap:10px}
 .ip-refonte.ip-boutique .ip-search input[type=search]{font-size:16px} /* 16 px : iOS ne zoome plus à la saisie */
 .ip-refonte.ip-boutique .ip-account-links{justify-content:flex-end;font-size:13px}

 /* Catégories : une bande qui défile horizontalement au lieu d’un écran de boutons. */
 .ip-refonte .preview-layout{padding-top:16px;padding-bottom:48px}
 .ip-refonte .preview-sidebar{margin-bottom:16px}
 .ip-refonte .preview-sidebar h2{font-size:12px;margin-bottom:10px;color:var(--ip-muted)}
 .ip-refonte .preview-sidebar>div:first-of-type{position:relative;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;margin-inline:-20px;padding:2px 20px 6px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
 .ip-refonte .preview-sidebar>div:first-of-type::-webkit-scrollbar{display:none}
 .ip-refonte .preview-sidebar .category-button{flex:0 0 auto;width:auto;align-items:center;white-space:nowrap;scroll-snap-align:start;min-height:40px;padding:8px 14px;border:1px solid var(--ip-line);border-radius:999px;background:#fff;font-size:13px;color:var(--ip-ink)}
 .ip-refonte .preview-sidebar .category-button span{font-size:11px}
 .ip-refonte .preview-sidebar .category-button[aria-current=page]{background:var(--ip-ink);border-color:var(--ip-ink);color:#fff}
 .ip-refonte .preview-sidebar .category-button[aria-current=page] span{color:#cfd6c2}

 /* Nombre de résultats et tri sur une seule ligne. */
 .ip-refonte.ip-boutique section.woocommerce>.woocommerce-result-count{float:left!important;display:block;margin:9px 0 14px;font-size:12px}
 .ip-refonte.ip-boutique section.woocommerce>.woocommerce-ordering{float:right!important;display:block;margin:0 0 14px}
 .ip-refonte.ip-boutique .woocommerce-ordering select{width:auto;max-width:170px;padding:9px 8px;font-size:13px}

 /* Deux produits par ligne, cartes compactes. */
 .ip-refonte.ip-boutique .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:28px!important}
 .ip-refonte.ip-boutique .woocommerce ul.products li.product{padding-bottom:10px!important;border-radius:6px}
 .ip-refonte.ip-boutique ul.products li.product a img{height:132px!important;padding:16px 10px 6px!important}
 .ip-refonte.ip-boutique ul.products li.product .woocommerce-loop-product__title{font-size:13px!important;line-height:1.3!important;letter-spacing:-.01em;padding:8px 10px 6px!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
 .ip-refonte.ip-boutique ul.products li.product .price{font-size:14px!important;padding:0 10px!important;margin-bottom:10px!important}
 .ip-refonte.ip-boutique ul.products li.product .price del{font-size:11px}
 .ip-refonte.ip-boutique ul.products li.product .onsale{top:8px!important;left:8px!important;font-size:9px!important;padding:4px 7px!important}
 .ip-refonte.ip-boutique ul.products li.product>a.button{margin:auto 10px 0!important;padding:10px 6px!important;min-height:42px;font-size:12px!important;line-height:1.25!important}
 .ip-refonte.ip-boutique ul.products li.product a.added_to_cart{margin:8px 10px 0;padding:9px 6px;font-size:12px}
 .ip-refonte .woocommerce nav.woocommerce-pagination ul{gap:6px}

 /* Fiche produit */
 .ip-refonte .ip-back-links{padding-block:16px;font-size:14px}
 .ip-refonte .woocommerce div.product .product_title{font-size:28px;margin-bottom:12px}
 .ip-refonte .woocommerce div.product form.cart .single_add_to_cart_button{max-width:none}

 /* Panier */
 .ip-refonte .woocommerce .coupon .button{width:100%}
 .ip-refonte .woocommerce .wc-proceed-to-checkout .checkout-button{font-size:16px!important;padding:16px!important}
}
@media(max-width:360px){
 .ip-refonte.ip-boutique ul.products li.product a img{height:116px!important}
 .ip-refonte.ip-boutique .ip-intro h1{font-size:31px}
}
@media(prefers-reduced-motion:reduce){.ip-refonte .ip-live-cart.is-bumped{animation:none}}

/* ---------- 1.3 : flèche du bouton « Boutique en ligne » en icône (plus d’émoji sur iPhone) ---------- */
.ip-refonte .navigation .nav-cta{gap:8px}
.ip-refonte .nav-cta-icon{flex-shrink:0;transition:transform .2s}
.ip-refonte .nav-cta:hover .nav-cta-icon{transform:translate(2px,-2px)}
.ip-refonte{font-variant-emoji:text}

/* ---------- 1.3 : liste de tri aux couleurs du site ---------- */
/* Repli sans JavaScript : liste native harmonisée. */
.ip-refonte .woocommerce-ordering select.orderby{-webkit-appearance:none;appearance:none;min-height:44px;padding:10px 40px 10px 14px;border:1px solid var(--ip-line);border-radius:6px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23232720' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ip-ink);font:500 14px/1.2 Arial,Helvetica,sans-serif;cursor:pointer}
.ip-refonte .woocommerce-ordering select.orderby.ip-sort-native{display:none}
.ip-refonte .woocommerce-ordering{position:relative;z-index:5}
.ip-sort{position:relative;display:inline-block;font-family:Arial,Helvetica,sans-serif}
.ip-sort-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--ip-line,#dfe2d7);border-radius:6px;background:#fff;color:var(--ip-ink,#232720);font:500 14px/1.2 Arial,Helvetica,sans-serif;cursor:pointer;transition:border-color .2s,box-shadow .2s;white-space:nowrap}
.ip-sort-button:hover{border-color:#aab39e}
.ip-sort.is-open .ip-sort-button{border-color:#a3c83b;box-shadow:0 0 0 3px #a3c83b40}
.ip-sort-prefix{color:var(--ip-muted,#626b59);font-weight:400}
.ip-sort-value{font-weight:600}
.ip-sort-chevron{margin-left:4px;transition:transform .2s;color:var(--ip-ink,#232720)}
.ip-sort.is-open .ip-sort-chevron{transform:rotate(180deg)}
.ip-sort.is-loading .ip-sort-button{opacity:.6;pointer-events:none}
.ip-sort-list{position:absolute;top:calc(100% + 6px);right:0;min-width:100%;width:max-content;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--ip-line,#dfe2d7);border-radius:8px;box-shadow:0 12px 30px #20221f1f;outline:none;z-index:20}
.ip-sort-list[hidden]{display:none}
.ip-sort-list li{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px 10px 10px;border-radius:5px;color:var(--ip-ink,#232720);font-size:14px;cursor:pointer;margin:0;list-style:none}
.ip-sort-list li.is-active{background:var(--ip-soft,#edf2df)}
.ip-sort-list li[aria-selected=true]{font-weight:600}
.ip-sort-check{flex-shrink:0;color:#64821b;visibility:hidden}
.ip-sort-list li[aria-selected=true] .ip-sort-check{visibility:visible}
.ip-sort-button:focus-visible,.ip-sort-list:focus-visible{outline:3px solid #64821b;outline-offset:3px}
@media(max-width:600px){
 .ip-refonte.ip-boutique section.woocommerce>.woocommerce-result-count{margin-top:13px}
 .ip-sort-button{padding:9px 12px;font-size:13px}
 .ip-sort-list li{font-size:15px}
}
@media(max-width:360px){.ip-sort-prefix{display:none}}
@media(prefers-reduced-motion:reduce){.ip-sort-chevron,.nav-cta-icon{transition:none}}

/* ---------- 1.4 : accueil sur téléphone — la boutique devient l’action principale ---------- */
.ip-refonte .hero-shop,.ip-refonte .hero-services-link{display:none}
@media(max-width:767px){
 .ip-refonte .hero-services{display:none}
 .ip-refonte .hero-shop{display:inline-flex;width:100%;justify-content:space-between}
 .ip-refonte .hero-actions{align-items:center;column-gap:6px;row-gap:4px}
 .ip-refonte .hero-services-link{display:inline-flex}
 .ip-refonte .hero-actions .quiet-link{padding-inline:8px 10px}
}

/* =====================================================================
   1.4 — Parcours d’achat : finitions
   ===================================================================== */
.ip-refonte{--ip-ink:#232720;--ip-muted:#626b59;--ip-line:#dfe2d7;--ip-soft:#edf2df;--ip-green:#a3c83b;--ip-green-dark:#506922;--ip-field:#c3cab6;--ip-danger:#9a3828}
.ip-refonte h1,.ip-refonte h2,.ip-refonte h3,.ip-refonte .eyebrow{text-wrap:balance}
.ip-refonte .hero .eyebrow{align-items:flex-start}.ip-refonte .hero .eyebrow span{flex-shrink:0;margin-top:.45em}

/* ---------- Titres des pages panier / commande / compte ---------- */
.ip-refonte .ip-commerce-page{padding-top:36px}
.ip-refonte .ip-commerce-page>h1{font:500 clamp(34px,4vw,46px)/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0 0 28px}

/* ---------- Étapes ---------- */
.ip-steps{display:flex;flex-wrap:wrap;align-items:center;gap:10px;list-style:none;margin:0 0 22px;padding:0;font-size:13px;color:var(--ip-muted)}
.ip-steps li{display:flex;align-items:center;gap:8px;margin:0}
.ip-steps li+li::before{content:"";width:32px;height:1px;background:var(--ip-field);margin-right:2px}
.ip-steps a{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.ip-steps a:hover .ip-step-label{text-decoration:underline}
.ip-step-num{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--ip-field);background:#fff;font-weight:600;font-size:12px;color:var(--ip-muted)}
.ip-steps li[aria-current=step]{color:var(--ip-ink);font-weight:600}
.ip-steps li[aria-current=step] .ip-step-num{background:var(--ip-ink);border-color:var(--ip-ink);color:#fff}
.ip-steps li.is-done .ip-step-num{background:var(--ip-green);border-color:var(--ip-green);color:#20231d}

/* ---------- Notices (ajout au panier, informations, erreurs) ---------- */
.ip-refonte .woocommerce-message,.ip-refonte .woocommerce-info,.ip-refonte .woocommerce-error,
.ip-refonte.ip-boutique .woocommerce-message,.ip-refonte.ip-boutique .woocommerce-info,.ip-refonte.ip-boutique .woocommerce-error{
 position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 18px;margin:0 0 16px!important;padding:14px 18px 14px 50px!important;
 background:#fff!important;color:var(--ip-ink)!important;border:1px solid var(--ip-line)!important;border-left:4px solid var(--ip-green)!important;border-radius:8px!important;font-size:14px;line-height:1.5;list-style:none;box-shadow:none}
.ip-refonte .woocommerce-info,.ip-refonte.ip-boutique .woocommerce-info{border-left-color:var(--ip-muted)!important}
.ip-refonte .woocommerce-error,.ip-refonte.ip-boutique .woocommerce-error{display:block;border-left-color:var(--ip-danger)!important}
.ip-refonte .woocommerce-message::before,.ip-refonte .woocommerce-info::before,.ip-refonte .woocommerce-error::before{
 content:""!important;position:absolute;left:17px!important;top:calc(50% - 10px)!important;width:20px;height:20px;font-family:inherit!important;
 background:#64821b;-webkit-mask:var(--ip-icon) center/contain no-repeat;mask:var(--ip-icon) center/contain no-repeat;
 --ip-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='m8 12.5 2.8 2.8L16.5 9'/%3E%3C/svg%3E")}
.ip-refonte .woocommerce-info::before{background:var(--ip-muted);--ip-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 11v6M12 7.5v.5'/%3E%3C/svg%3E")}
.ip-refonte .woocommerce-error::before{top:16px!important;background:var(--ip-danger);--ip-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 7v6M12 16.5v.5'/%3E%3C/svg%3E")}
.ip-refonte .woocommerce-error li{margin:0;list-style:none}
.ip-refonte .woocommerce-message .button,.ip-refonte .woocommerce-info .button,.ip-refonte.ip-boutique .woocommerce-message a.button{
 order:2;float:none!important;background:none!important;color:var(--ip-green-dark)!important;padding:0!important;min-height:0!important;font:600 14px/1.4 Arial,Helvetica,sans-serif!important;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.ip-refonte .woocommerce-message a:not(.button),.ip-refonte .woocommerce-info a:not(.button){color:var(--ip-green-dark)!important;text-underline-offset:3px}

/* ---------- Champs de formulaire ---------- */
.ip-refonte .woocommerce form .form-row input.input-text,.ip-refonte .woocommerce form .form-row textarea,.ip-refonte .woocommerce form .form-row select,
.ip-refonte .woocommerce .select2-container .select2-selection--single,.ip-refonte .woocommerce #coupon_code{
 min-height:48px;border:1px solid var(--ip-field)!important;border-radius:6px!important;background:#fff;color:var(--ip-ink);font:15px/1.4 Arial,Helvetica,sans-serif;padding:11px 14px;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.ip-refonte .woocommerce form .form-row input.input-text:focus,.ip-refonte .woocommerce form .form-row textarea:focus,.ip-refonte .woocommerce form .form-row select:focus,.ip-refonte .woocommerce #coupon_code:focus,
.ip-refonte .select2-container--open .select2-selection--single,.ip-refonte .select2-container--focus .select2-selection--single{border-color:#64821b!important;box-shadow:0 0 0 3px #a3c83b40;outline:none}
.ip-refonte .woocommerce .select2-container .select2-selection--single{padding:0;height:48px}
.ip-refonte .woocommerce .select2-container .select2-selection--single .select2-selection__rendered{line-height:46px!important;padding:0 40px 0 14px!important;color:var(--ip-ink)}
.ip-refonte .woocommerce .select2-container .select2-selection--single .select2-selection__arrow{height:46px;right:8px}
.ip-refonte .select2-dropdown{border-color:var(--ip-field);border-radius:6px;overflow:hidden}.ip-refonte .select2-results__option--highlighted[aria-selected],.ip-refonte .select2-results__option--highlighted[data-selected]{background:var(--ip-soft)!important;color:var(--ip-ink)!important}
.ip-refonte .woocommerce form .form-row label{font-weight:600;font-size:13px;color:var(--ip-ink);margin-bottom:6px;line-height:1.4}
.ip-refonte .woocommerce form .form-row .required{color:var(--ip-danger);text-decoration:none}
.ip-refonte .woocommerce form .form-row{margin-bottom:14px;padding:0}
.ip-refonte .woocommerce input[type=checkbox],.ip-refonte .woocommerce input[type=radio]{accent-color:#64821b;width:18px;height:18px;vertical-align:-3px}
/* Liste d’options (variantes) */
.ip-refonte .woocommerce div.product form.cart .variations select,.ip-refonte .woocommerce .variations select{
 -webkit-appearance:none;appearance:none;min-width:240px;max-width:100%;min-height:48px;padding:0 42px 0 14px;border:1px solid var(--ip-field);border-radius:6px;
 background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23232720' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;font:15px Arial,Helvetica,sans-serif;color:var(--ip-ink);cursor:pointer}
.ip-refonte .woocommerce .variations select:focus{border-color:#64821b;box-shadow:0 0 0 3px #a3c83b40;outline:none}

/* ---------- Quantité − / + ---------- */
.ip-qty{display:inline-flex;align-items:center;height:44px;border:1px solid var(--ip-field);border-radius:999px;background:#fff;overflow:hidden}
.ip-qty-btn{display:grid;place-items:center;width:40px;height:100%;padding:0;border:0;background:transparent;color:var(--ip-ink);cursor:pointer;transition:background .15s}
.ip-qty-btn:hover:not(:disabled){background:var(--ip-soft)}.ip-qty-btn:disabled{color:#c2c8b6;cursor:default}
.ip-qty-btn:focus-visible{outline:3px solid #64821b;outline-offset:-3px}
.ip-refonte .woocommerce .ip-qty input.qty{width:42px!important;min-height:0!important;height:100%;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:center;font:600 15px Arial,Helvetica,sans-serif;color:var(--ip-ink);-moz-appearance:textfield;appearance:textfield}
.ip-qty input.qty::-webkit-outer-spin-button,.ip-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ip-refonte .woocommerce div.product form.cart .ip-qty{height:48px}

/* ---------- Bouton retirer : corbeille discrète ---------- */
.ip-refonte .woocommerce a.remove,.ip-refonte .woocommerce a.remove:visited{
 display:grid!important;place-items:center;width:40px!important;height:40px!important;border-radius:50%!important;font-size:0!important;line-height:0!important;
 color:var(--ip-muted)!important;background:transparent!important;border:0!important;text-decoration:none;transition:background .15s,color .15s}
.ip-refonte .woocommerce a.remove::before{content:"";width:18px;height:18px;background:currentColor;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M5.5 7l1 12.5a1.5 1.5 0 0 0 1.5 1.5h8a1.5 1.5 0 0 0 1.5-1.5l1-12.5M9 7V4.5A1.5 1.5 0 0 1 10.5 3h3A1.5 1.5 0 0 1 15 4.5V7'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M5.5 7l1 12.5a1.5 1.5 0 0 0 1.5 1.5h8a1.5 1.5 0 0 0 1.5-1.5l1-12.5M9 7V4.5A1.5 1.5 0 0 1 10.5 3h3A1.5 1.5 0 0 1 15 4.5V7'/%3E%3C/svg%3E") center/contain no-repeat}
.ip-refonte .woocommerce a.remove:hover,.ip-refonte .woocommerce a.remove:focus-visible{background:#f6ebe8!important;color:var(--ip-danger)!important}

/* ---------- Panier : mise en page ---------- */
.ip-refonte.woocommerce-cart .ip-page-content>.woocommerce:has(>.woocommerce-cart-form){display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px 40px;align-items:start}
.ip-refonte.woocommerce-cart .ip-page-content>.woocommerce>:not(.woocommerce-cart-form):not(.cart-collaterals){grid-column:1/-1}
.ip-refonte.woocommerce-cart .woocommerce-notices-wrapper:empty{display:none}
.ip-refonte .woocommerce .cart-collaterals{position:sticky;top:112px;width:auto;float:none}
.ip-refonte.admin-bar .woocommerce .cart-collaterals{top:144px}
.ip-refonte .woocommerce .cart-collaterals .cart_totals{float:none;width:100%}

/* Articles : une carte par ligne */
.ip-refonte .woocommerce table.shop_table.cart{border:0!important;background:transparent!important;border-radius:0;margin:0;border-collapse:separate}
.ip-refonte .woocommerce table.shop_table.cart thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ip-refonte .woocommerce table.shop_table.cart tbody{display:block}
.ip-refonte .woocommerce table.shop_table.cart tr.cart_item{display:grid;grid-template-columns:88px minmax(0,1fr) auto 116px 40px;grid-template-areas:"thumb name qty sub remove" "thumb price qty sub remove";column-gap:20px;align-items:center;margin:0 0 12px;padding:16px;background:#fff;border:1px solid var(--ip-line);border-radius:10px}
.ip-refonte .woocommerce table.shop_table.cart tr.cart_item td{display:block!important;float:none!important;width:auto!important;padding:0!important;border:0!important;background:none!important;text-align:left!important}
.ip-refonte .woocommerce table.shop_table.cart tr.cart_item td::before{content:none!important;display:none!important}
.ip-refonte .woocommerce table.shop_table.cart td.product-thumbnail{grid-area:thumb}
.ip-refonte .woocommerce table.shop_table.cart td.product-thumbnail img{display:block;width:88px!important;height:88px;object-fit:contain;padding:6px;background:#fff;border:1px solid var(--ip-line);border-radius:8px}
.ip-refonte .woocommerce table.shop_table.cart td.product-name{grid-area:name;align-self:end;font:600 16px/1.35 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.ip-refonte .woocommerce table.shop_table.cart td.product-name a{color:var(--ip-ink);text-decoration:none}.ip-refonte .woocommerce table.shop_table.cart td.product-name a:hover{text-decoration:underline;text-underline-offset:3px}
.ip-refonte .woocommerce table.shop_table.cart td.product-name dl.variation{margin:4px 0 0;font:400 13px/1.5 Arial,Helvetica,sans-serif;color:var(--ip-muted)}
.ip-refonte .woocommerce table.shop_table.cart td.product-name dl.variation dt,.ip-refonte .woocommerce table.shop_table.cart td.product-name dl.variation dd,.ip-refonte .woocommerce table.shop_table.cart td.product-name dl.variation p{display:inline;margin:0;font-weight:400}
.ip-refonte .woocommerce table.shop_table.cart td.product-price{grid-area:price;align-self:start;margin-top:4px!important;color:var(--ip-muted);font-size:13px}
.ip-refonte .woocommerce table.shop_table.cart td.product-price::after{content:" / pièce"}
.ip-refonte .woocommerce table.shop_table.cart td.product-quantity{grid-area:qty}
.ip-refonte .woocommerce table.shop_table.cart td.product-subtotal{grid-area:sub;text-align:right!important;font:700 16px Arial,Helvetica,sans-serif;color:var(--ip-ink)}
.ip-refonte .woocommerce table.shop_table.cart td.product-remove{grid-area:remove;justify-self:end}
/* Ligne d’actions : code promo */
.ip-refonte .woocommerce table.shop_table.cart tbody>tr:not(.cart_item){display:block}
.ip-refonte .woocommerce table.shop_table.cart td.actions{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 0!important;border:0!important;background:none!important;text-align:left!important}
.ip-refonte .woocommerce table.shop_table.cart td.actions::before{content:none!important}
.ip-refonte .woocommerce table.cart td.actions .coupon{display:flex;align-items:stretch;float:none!important;width:100%;max-width:420px;padding:0!important;gap:0}
.ip-refonte .woocommerce table.cart td.actions .coupon #coupon_code{flex:1 1 auto;width:auto!important;min-width:0;margin:0!important;border-right:0!important;border-radius:6px 0 0 6px!important}
.ip-refonte .woocommerce table.cart td.actions .coupon .button,.ip-refonte.ip-boutique .woocommerce table.cart td.actions .coupon button.button{
 flex:0 0 auto;width:auto!important;margin:0!important;min-height:48px;padding:0 22px!important;border-radius:0 6px 6px 0!important;background:var(--ip-ink)!important;color:#fff!important;font:600 14px Arial,Helvetica,sans-serif!important;white-space:nowrap}
.ip-refonte .woocommerce table.cart td.actions .coupon .button:hover{background:#3a4033!important}
.ip-refonte .woocommerce table.cart td.actions>.button[name=update_cart]{float:none!important;margin:0!important;background:#fff!important;color:var(--ip-ink)!important;border:1px solid var(--ip-field)!important}
.ip-js .ip-refonte .woocommerce table.cart td.actions>.button[name=update_cart],.ip-js.ip-refonte .woocommerce table.cart td.actions>.button[name=update_cart]{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;overflow:hidden;clip:rect(0 0 0 0);border:0!important}
.ip-refonte .woocommerce .blockUI.blockOverlay{background:#fafaf6!important;opacity:.6!important;border-radius:10px}

/* Récapitulatif */
.ip-refonte .woocommerce .cart_totals{padding:24px;background:#fff;border:1px solid var(--ip-line);border-radius:12px}
.ip-refonte .woocommerce .cart_totals h2{font:600 19px/1.3 Arial,Helvetica,sans-serif;letter-spacing:-.01em;margin:0 0 6px}
.ip-refonte .woocommerce .cart_totals table.shop_table{border:0!important;border-radius:0;margin:0;background:transparent}
.ip-refonte .woocommerce .cart_totals table.shop_table tr{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--ip-line)}
.ip-refonte .woocommerce .cart_totals table.shop_table tr:first-child{border-top:0}
.ip-refonte .woocommerce .cart_totals table.shop_table th,.ip-refonte .woocommerce .cart_totals table.shop_table td{display:block!important;padding:13px 0!important;border:0!important;background:none!important;font-size:15px}
.ip-refonte .woocommerce .cart_totals table.shop_table th{font-weight:400;color:var(--ip-muted);text-align:left}
.ip-refonte .woocommerce .cart_totals table.shop_table td{text-align:right!important;flex:1}
.ip-refonte .woocommerce .cart_totals table.shop_table td::before{content:none!important}
.ip-refonte .woocommerce .cart_totals .order-total th,.ip-refonte .woocommerce .cart_totals .order-total td{color:var(--ip-ink);font-size:18px;font-weight:700}
.ip-refonte .woocommerce .cart_totals .order-total small,.ip-refonte .woocommerce .cart_totals .includes_tax{display:block;font-size:12px;font-weight:400;color:var(--ip-muted)}
.ip-refonte .woocommerce .cart_totals ul#shipping_method{margin:0;padding:0;list-style:none;text-align:right}
.ip-refonte .woocommerce .wc-proceed-to-checkout{padding:16px 0 0}
.ip-refonte.ip-boutique .woocommerce .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%;margin:0!important;min-height:54px;padding:16px!important;border-radius:8px!important;font-size:16px!important}
.ip-refonte.ip-boutique .woocommerce .wc-proceed-to-checkout a.checkout-button::after{display:inline-block!important;content:""!important;width:18px;height:18px;background:currentColor;margin:0;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 12h15m-6-6 6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 12h15m-6-6 6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.ip-cart-help{margin:16px 0 0;text-align:center;font-size:13px;color:var(--ip-muted)}.ip-cart-help a{color:var(--ip-ink);font-weight:600;text-decoration:none;white-space:nowrap}
.ip-continue{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px;padding:8px;font-size:13px;color:var(--ip-muted)!important;text-decoration:none}.ip-continue:hover{color:var(--ip-ink)!important}
.ip-refonte .woocommerce .cross-sells{grid-column:1/-1;width:100%!important;float:none!important;margin-top:24px}

/* ---------- Panier vide ---------- */
.ip-refonte .woocommerce .return-to-shop{display:none}
.ip-empty-cart{max-width:560px;margin:8px auto 24px;padding:48px 32px 36px;text-align:center;background:#fff;border:1px solid var(--ip-line);border-radius:16px}
.ip-empty-icon{display:inline-grid;place-items:center;width:76px;height:76px;margin-bottom:18px;border-radius:50%;background:var(--ip-soft);color:#3e5216}
.ip-refonte .ip-empty-cart h2{margin:0 0 10px;font:500 28px/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.03em;color:var(--ip-ink)}
.ip-empty-cart>p{margin:0 auto 24px;max-width:400px;color:var(--ip-muted);font-size:16px;line-height:1.6}
.ip-refonte .ip-empty-cart .ip-empty-cta{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:15px 24px;border-radius:8px;font-size:15px;font-weight:600;color:#20231d;text-decoration:none}
.ip-empty-cats{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:26px 0 0;padding-top:24px;border-top:1px solid var(--ip-line);font-size:13px;color:var(--ip-muted)}
.ip-empty-cats span{width:100%;margin-bottom:2px}
.ip-empty-cats a{display:inline-flex;align-items:center;min-height:38px;padding:7px 15px;border:1px solid var(--ip-line);border-radius:999px;color:var(--ip-ink);text-decoration:none;font-size:14px;transition:background .15s,border-color .15s}
.ip-empty-cats a:hover{background:var(--ip-soft);border-color:#c9d3b0}
.ip-empty-cart .ip-empty-help{margin:22px 0 0;font-size:13px;max-width:none}.ip-empty-help a{color:var(--ip-ink);font-weight:600;text-decoration:none;white-space:nowrap}

/* ---------- Fiche produit ---------- */
.ip-refonte .woocommerce div.product .summary p.price,.ip-refonte .woocommerce div.product .summary span.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;color:var(--ip-ink)!important;font:600 28px/1.2 Arial,Helvetica,sans-serif}
.ip-refonte .woocommerce div.product .summary p.price del,.ip-refonte .woocommerce div.product .summary span.price del{order:2;color:var(--ip-muted)!important;opacity:1;font-size:18px;font-weight:400;text-decoration-thickness:1px}
.ip-refonte .woocommerce div.product .summary p.price ins,.ip-refonte .woocommerce div.product .summary span.price ins{order:1;text-decoration:none;background:none;color:var(--ip-ink);font-weight:600}
.ip-save{order:3;align-self:center;padding:4px 9px;border-radius:999px;background:var(--ip-soft);color:#3e5216;font-size:13px;font-weight:700;letter-spacing:.01em}
.ip-refonte .woocommerce-product-details__short-description{font-size:16px;color:#3c4236}
.ip-refonte .woocommerce div.product .product_meta{display:grid;gap:4px;padding-top:18px;border-top:1px solid var(--ip-line);font-size:13px;color:var(--ip-muted)}
.ip-refonte .woocommerce div.product .product_meta>span{display:block}.ip-refonte .woocommerce div.product .product_meta a{color:var(--ip-ink);text-underline-offset:3px}
.ip-refonte .woocommerce div.product form.cart .variations{border:0;margin:0 0 18px;width:100%}
.ip-refonte .woocommerce div.product form.cart .variations tr{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.ip-refonte .woocommerce div.product form.cart .variations th,.ip-refonte .woocommerce div.product form.cart .variations td{display:block;padding:0!important;border:0;text-align:left;line-height:1.4}
.ip-refonte .woocommerce div.product form.cart .variations th label{font:600 14px Arial,Helvetica,sans-serif;color:var(--ip-ink)}
.ip-refonte .woocommerce div.product form.cart .reset_variations{display:inline-block;margin-left:12px;font-size:13px;color:var(--ip-muted);text-underline-offset:3px}
.ip-refonte .woocommerce div.product .single_variation_wrap .woocommerce-variation-price{margin-bottom:14px}
.ip-refonte.ip-boutique .woocommerce div.product form.cart .single_add_to_cart_button.disabled{opacity:.45;cursor:not-allowed}
/* Onglets */
.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:28px;margin:0 0 6px!important;padding:0!important;border-bottom:1px solid var(--ip-line);overflow-x:auto;scrollbar-width:none}
.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs::before,.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs li::before,.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;flex-shrink:0}
.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:14px 0!important;font:600 15px Arial,Helvetica,sans-serif;color:var(--ip-muted)!important;text-decoration:none}
.ip-refonte .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ip-ink)!important;box-shadow:inset 0 -2px 0 var(--ip-ink)}
.ip-refonte .woocommerce div.product .woocommerce-tabs .panel{margin:0 0 32px;padding-top:14px;font-size:16px;line-height:1.7}
.ip-refonte .woocommerce div.product .woocommerce-tabs .panel>h2:empty{display:none}
.ip-refonte .woocommerce table.woocommerce-product-attributes{border:0;border-top:1px solid var(--ip-line)}
.ip-refonte .woocommerce table.woocommerce-product-attributes th,.ip-refonte .woocommerce table.woocommerce-product-attributes td{padding:12px 0!important;border:0;border-bottom:1px solid var(--ip-line);background:none!important;text-align:left;font-style:normal}
.ip-refonte .woocommerce table.woocommerce-product-attributes th{width:200px;font-weight:600}.ip-refonte .woocommerce table.woocommerce-product-attributes td p{margin:0}

/* ---------- Commande ---------- */
.ip-refonte .woocommerce-checkout h3,.ip-refonte .woocommerce-checkout #order_review_heading{font:600 20px/1.3 Arial,Helvetica,sans-serif;letter-spacing:-.015em;margin:8px 0 18px}
.ip-refonte .woocommerce-checkout #order_review{padding:24px;background:#fff;border:1px solid var(--ip-line);border-radius:12px}
.ip-refonte .woocommerce-checkout #order_review_heading{margin-bottom:12px}
.ip-refonte .woocommerce-checkout table.shop_table{border:0!important;border-radius:0;margin:0 0 20px;background:transparent}
.ip-refonte .woocommerce-checkout table.shop_table th,.ip-refonte .woocommerce-checkout table.shop_table td{padding:12px 0!important;border:0!important;border-top:1px solid var(--ip-line)!important;background:none!important;font-size:15px}
.ip-refonte .woocommerce-checkout table.shop_table thead th{border-top:0!important;font-size:13px;color:var(--ip-muted);font-weight:400}
.ip-refonte .woocommerce-checkout table.shop_table td:last-child,.ip-refonte .woocommerce-checkout table.shop_table th:last-child{text-align:right}
.ip-refonte .woocommerce-checkout table.shop_table .product-quantity{color:var(--ip-muted);font-weight:400}
.ip-refonte .woocommerce-checkout table.shop_table .order-total th,.ip-refonte .woocommerce-checkout table.shop_table .order-total td{font-size:18px;font-weight:700;color:var(--ip-ink)}
.ip-refonte .woocommerce-checkout #payment{background:transparent!important;border-radius:0}
.ip-refonte .woocommerce-checkout #payment ul.payment_methods{padding:0 0 16px!important;border-bottom:1px solid var(--ip-line)!important}
.ip-refonte .woocommerce-checkout #payment div.form-row{padding:16px 0 0!important}
.ip-refonte .woocommerce-checkout #payment .woocommerce-privacy-policy-text{font-size:13px;color:var(--ip-muted);line-height:1.6}
.ip-refonte .woocommerce-checkout #payment .woocommerce-info{margin:0!important}
.ip-refonte.ip-boutique .woocommerce-checkout #payment #place_order{float:none;width:100%;min-height:54px;margin-top:12px!important;border-radius:8px!important;font-size:16px!important}
.ip-refonte .woocommerce-checkout .woocommerce-form-coupon{padding:18px;border:1px dashed var(--ip-field);border-radius:10px;background:#fff}

/* ---------- Compte ---------- */
.ip-refonte .woocommerce form.login,.ip-refonte .woocommerce form.register{max-width:520px;margin:0 0 24px;padding:28px;background:#fff;border:1px solid var(--ip-line)!important;border-radius:12px}
.ip-refonte .woocommerce-account .ip-page-content>.woocommerce>h2{font:600 22px Arial,Helvetica,sans-serif;margin:0 0 16px}
.ip-refonte .woocommerce form.login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;margin:0 0 0 14px;font-weight:400}
.ip-refonte .woocommerce form.login .lost_password a{color:var(--ip-muted);font-size:14px;text-underline-offset:3px}

/* ---------- Téléphone ---------- */
@media(max-width:960px){
 .ip-refonte.woocommerce-cart .ip-page-content>.woocommerce:has(>.woocommerce-cart-form){grid-template-columns:1fr}
 .ip-refonte .woocommerce .cart-collaterals{position:static}
}
@media(max-width:700px){
 .ip-refonte .ip-commerce-page{padding-top:22px}
 .ip-refonte .ip-commerce-page>h1{margin-bottom:20px}
 .ip-steps{gap:8px;margin-bottom:16px}
 .ip-steps li+li::before{width:16px}
 .ip-steps li:not([aria-current]) .ip-step-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .ip-refonte .woocommerce table.shop_table.cart tr.cart_item{grid-template-columns:72px minmax(0,1fr) 40px;grid-template-areas:"thumb name remove" "thumb price price" "foot foot foot";column-gap:14px;row-gap:4px;padding:14px}
 .ip-refonte .woocommerce table.shop_table.cart td.product-thumbnail img{width:72px!important;height:72px}
 .ip-refonte .woocommerce table.shop_table.cart td.product-name{align-self:start;font-size:15px;padding-top:2px!important}
 .ip-refonte .woocommerce table.shop_table.cart td.product-remove{align-self:start;margin:-8px -8px 0 0!important}
 .ip-refonte .woocommerce table.shop_table.cart td.product-quantity{grid-area:foot;justify-self:start;margin-top:12px!important}
 .ip-refonte .woocommerce table.shop_table.cart td.product-subtotal{grid-area:foot;justify-self:end;align-self:center;margin-top:12px!important;font-size:17px}
 .ip-refonte .woocommerce table.cart td.actions .coupon{max-width:none}
 .ip-refonte .woocommerce .cart_totals{padding:20px}
 .ip-empty-cart{padding:36px 20px 28px}
 .ip-refonte .ip-empty-cart h2{font-size:25px}
 .ip-refonte .ip-empty-cart .ip-empty-cta{width:100%;justify-content:center}
 .ip-refonte .woocommerce div.product .summary p.price,.ip-refonte .woocommerce div.product .summary span.price{font-size:26px}
 .ip-refonte .woocommerce div.product form.cart .variations select{width:100%}
 .ip-refonte .woocommerce-checkout #order_review{padding:18px}
 .ip-refonte .woocommerce form.login,.ip-refonte .woocommerce form.register{padding:20px}
}

/* Sur la page panier, le lien « Voir le panier » des messages n’a pas lieu d’être. */
.ip-refonte.woocommerce-cart .woocommerce-message .wc-forward{display:none!important}
.ip-refonte .woocommerce-info,.ip-refonte.ip-boutique .woocommerce-info{justify-content:flex-start}
.ip-refonte .woocommerce-checkout table.shop_table{border-collapse:collapse!important}
/* Code promo : message d’erreur sous le champ (WooCommerce 10+) */
.ip-refonte .woocommerce table.cart td.actions .coupon{flex-wrap:wrap}
.ip-refonte .woocommerce table.cart td.actions .coupon #coupon_code{flex:1 1 0}
.ip-refonte .woocommerce .coupon-error-notice{flex-basis:100%;order:3;margin:8px 0 0!important;padding:0!important;color:var(--ip-danger)!important;font-size:13px;line-height:1.5}
.ip-refonte.ip-boutique .woocommerce #coupon_code:focus-visible,.ip-refonte .woocommerce #coupon_code:focus{outline:none!important}
.ip-refonte .woocommerce #coupon_code.has-error,.ip-refonte .woocommerce #coupon_code[aria-invalid=true]{border-color:var(--ip-danger)!important;box-shadow:0 0 0 3px #9a382826}
.ip-refonte .woocommerce-notices-wrapper:not(:has(*)){display:none}
.ip-commerce-page:has(.ip-empty-cart) .ip-steps-nav{display:none}
/* Accueil : « Autres services en magasin » dans le style des questions fréquentes */
.ip-refonte .additional-services{margin-top:28px;border-top:1px solid #dce0d2;border-bottom:1px solid #dce0d2}
.ip-refonte .additional-services summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;list-style:none;text-decoration:none;font-size:15px;color:var(--ip-ink)}
.ip-refonte .additional-services summary::-webkit-details-marker{display:none}
.ip-refonte .additional-services summary::after{content:"+";color:#6b7f42;font-size:25px;font-weight:300;line-height:1;transition:transform .2s}
.ip-refonte .additional-services[open] summary::after{transform:rotate(45deg)}
.ip-refonte .additional-services p{padding:0 0 18px;color:#59614e}
/* Fiche sans description : « Produits similaires » toujours sous la galerie et le bloc d’achat */
.ip-refonte .woocommerce div.product .woocommerce-tabs,.ip-refonte .woocommerce div.product .related,.ip-refonte .woocommerce div.product .upsells{clear:both}
.ip-refonte .woocommerce div.product .related>h2,.ip-refonte .woocommerce div.product .upsells>h2{padding-top:24px}
/* Disponibilité sur la fiche */
.ip-refonte .woocommerce div.product .summary .stock{display:inline-flex;align-items:center;gap:8px;margin:4px 0 18px;padding:6px 12px;border-radius:999px;font:600 13px/1.3 Arial,Helvetica,sans-serif;background:var(--ip-soft);color:#3e5216!important}
.ip-refonte .woocommerce div.product .summary .stock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.ip-refonte .woocommerce div.product .summary .stock.out-of-stock{background:#f6ebe8;color:var(--ip-danger)!important}
@media(min-width:1101px){.ip-refonte.ip-boutique .woocommerce div.product .related ul.products,.ip-refonte.ip-boutique .woocommerce div.product .upsells ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Livraison : choix lisibles dans le récapitulatif et la commande */
.ip-refonte .woocommerce .cart_totals tr.woocommerce-shipping-totals{flex-direction:column;gap:8px;padding-bottom:12px}
.ip-refonte .woocommerce .cart_totals tr.woocommerce-shipping-totals th{padding-bottom:0!important}
.ip-refonte .woocommerce .cart_totals tr.woocommerce-shipping-totals td{padding-top:0!important;text-align:left!important}
.ip-refonte .woocommerce ul#shipping_method{display:grid;gap:8px;margin:0;padding:0;list-style:none;text-align:left}
.ip-refonte .woocommerce ul#shipping_method li{display:flex;align-items:center;gap:10px;margin:0!important;padding:12px 14px;border:1px solid var(--ip-line);border-radius:8px;background:#fff;line-height:1.35;text-indent:0}
.ip-refonte .woocommerce ul#shipping_method li:has(input:checked){border-color:#64821b;background:var(--ip-soft)}
.ip-refonte .woocommerce ul#shipping_method li input{margin:0!important;flex-shrink:0}
.ip-refonte .woocommerce ul#shipping_method li label{flex:1;display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0;cursor:pointer;font-size:14px}
.ip-ship-cost{font-weight:600;white-space:nowrap}
.ip-refonte .woocommerce .woocommerce-shipping-destination,.ip-refonte .woocommerce .woocommerce-shipping-totals td>p{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--ip-muted)}
.ip-refonte .woocommerce-checkout table.shop_table tr.woocommerce-shipping-totals td{text-align:left!important}
/* Prix TTC */
.ip-ttc{order:4;align-self:center;font-size:13px;font-weight:600;color:var(--ip-muted);letter-spacing:.04em}
.ip-refonte .woocommerce .order-total th::after,.ip-refonte .woocommerce-checkout table.shop_table .order-total th::after{content:"\00a0TTC"}
/* 1.7 — accessibilité, page d'erreur, conditions générales */
.ip-refonte .woocommerce div.product .product_meta a{text-decoration:underline;text-decoration-thickness:1px}
.ip-refonte .category-button[aria-current=page] span{color:#4f5845}
.ip-not-found{min-height:62vh;padding-top:56px;padding-bottom:90px}.ip-not-found>*{max-width:760px}
.ip-not-found-code{margin:0 0 6px;font-size:14px;font-weight:600;letter-spacing:.12em;color:var(--ip-green-dark)}
.ip-not-found h1{margin:0 0 14px}
.ip-not-found>p{font-size:17px;color:var(--ip-muted)}
.ip-not-found-links{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:26px 0 34px;padding:0}
.ip-not-found-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--ip-line);border-radius:999px;background:#fff;color:var(--ip-ink);text-decoration:none;font-weight:600}
.ip-not-found-links a:hover,.ip-not-found-links a:focus-visible{border-color:var(--ip-ink)}
.ip-not-found-links li:first-child a{background:var(--ip-ink);border-color:var(--ip-ink);color:#fff}
.ip-not-found-search label{display:block;font-weight:600;margin-bottom:8px}
.ip-not-found-search span{display:flex;gap:8px;max-width:520px}
.ip-not-found-search input[type=search]{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1px solid var(--ip-field);border-radius:8px;font:inherit}
.ip-not-found-search button{min-height:46px;padding:0 18px;border:0;border-radius:8px;background:var(--ip-green);color:var(--ip-ink);font:inherit;font-weight:600;cursor:pointer}
.ip-refonte .woocommerce-checkout .ip-cgv{margin:14px 0 18px;font-size:15px}
.ip-refonte .woocommerce-checkout .ip-cgv label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.ip-refonte .woocommerce-checkout .ip-cgv input{width:20px;height:20px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--ip-green-dark)}
.ip-refonte .woocommerce-checkout .ip-cgv a{color:var(--ip-ink);text-decoration:underline}
/* Fiche sans description ni produits similaires : le fond clair doit contenir l'image et le résumé (flottants). */
.ip-refonte .ip-product-page,.ip-refonte .ip-product-page div.product{display:flow-root}
/* Contraste : bouton vert de la section Réparations (texte foncé comme les autres boutons verts) et petits libellés pro. */
.ip-refonte .repair-copy .button{color:var(--ip-ink)}
.ip-refonte .pro-services article>span{color:#525e3c}
/* 1.8.2 — téléphone : héros allégé (Boutique en ligne + Nous trouver) et pas de barre de recherche dans la boutique. */
@media(max-width:767px){
 .ip-refonte .hero-services-link{display:none}
 .ip-refonte.ip-boutique .ip-tools{display:none}
}
