/* Colour and depth, without a canvas or an animation dependency. */
/* Basket format choices remain readable on small screens. */
@media(max-width:760px){
  body.single-product:has(.pp-composition-gallery) .summary .pp-format-buttons{display:flex;flex-wrap:wrap;gap:8px}
  body.single-product:has(.pp-composition-gallery) .summary .pp-format-buttons button{
    flex:1 1 calc(50% - 8px);min-width:0;max-width:100%;min-height:46px;
    font-size:14px!important;line-height:1.35;padding:11px 12px!important;white-space:normal;
  }
}

.woocommerce div.product form.cart .variations .pp-one-format th,form.variations_form .variations .pp-one-format th{display:none!important}.woocommerce div.product form.cart .variations .pp-one-format.pp-direct-piece{display:none}.pp-fixed-unit{display:inline-block;background:#edf3e3;border:1px solid #bdcaaa;border-radius:12px;padding:9px 14px;color:#173f2a;font-weight:700}.pp-one-format .reset_variations{display:none!important}
.pp-hero{position:relative;padding-block:45px;isolation:isolate}.pp-hero:before{content:"";position:absolute;z-index:-1;inset:0 -3%;background:radial-gradient(ellipse at 12% 30%,#ffe1b780,transparent 55%),radial-gradient(ellipse at 90% 70%,#dbe9ca90,transparent 50%);pointer-events:none}.pp-hero h1 em{color:#b13c35;position:relative;text-decoration:underline;text-decoration-color:#f2c34d;text-decoration-thickness:.11em;text-underline-offset:.12em}.pp-hero figure{transform:rotate(1.5deg);filter:drop-shadow(0 16px 16px #30462c18)}.pp-hero figure img{border-radius:90px 24px 24px 24px;border:6px solid #fff}.pp-hero figcaption{transform:rotate(-3deg);box-shadow:0 5px 0 #c9a62b;border-radius:8px}
.pp-shopping-choices{gap:20px;padding-top:20px;padding-bottom:12px}.pp-shopping-choices>a{--card:#fff0d8;--edge:#e6b573;background:var(--card);border:1px solid var(--edge);border-bottom:5px solid var(--edge);border-radius:22px;min-height:190px;padding:22px;justify-content:flex-start;box-shadow:0 10px 22px #173f2a09;transition:transform .25s ease,box-shadow .25s ease;transform-style:preserve-3d}.pp-shopping-choices>a:nth-child(2){--card:#eaf2d8;--edge:#abc184}.pp-shopping-choices>a:nth-child(3){--card:#eee7f7;--edge:#c3addb}.pp-shopping-choices>a:hover{background:var(--card);border-color:var(--edge)}.pp-choice-art{font-style:normal;font-size:2.35rem;line-height:1.2;display:block;filter:drop-shadow(2px 5px 2px #173f2a18);transform-origin:25% 70%;transition:transform .3s}.pp-shopping-choices strong{margin-top:8px;font-size:1.03rem}.pp-shopping-choices>a>span{color:#465740}.pp-shopping-choices small{background:#6b3a7c;top:-13px;left:20px}.pp-shopping-choices strong span{transition:transform .2s}.pp-shopping-choices a:hover strong span{transform:translateX(4px)}
.pp-baskets-section{border:0}.pp-basket{--basket:#f8ecd7;border:1px solid #e0dacb;padding:22px;border-radius:25px;background:linear-gradient(var(--basket),#fff 330px);box-shadow:0 8px 0 #e4dece55,0 20px 35px #173f2a08;transition:transform .25s,box-shadow .25s}.pp-basket:nth-child(2){--basket:#eaf0de}.pp-basket:nth-child(3){--basket:#ffe5d8}.pp-basket:nth-child(4){--basket:#ede5f5}.pp-basket-top{border:0}.pp-basket h3{min-height:2.3em}.pp-basket-image{display:block;background:#ffffff80;border-radius:50% 50% 20px 20px;text-align:center;margin:4px 0 14px}.pp-basket-image img{height:155px;margin:0;transition:transform .3s}.pp-basket-illustration img{padding:8px}.pp-basket-contents h4{font-size:.9rem}.pp-basket-contents li::marker{color:#bd5736}.pp-basket>.pp-button{border-radius:30px;box-shadow:0 4px 0 #0f2e1d}.pp-button,.woocommerce a.button,.woocommerce button.button{transition:transform .2s,background .2s,box-shadow .2s}.pp-tint{background:#f1f3e7}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{border:1px solid #e3e6d8;border-radius:23px;box-shadow:0 8px 22px #173f2a08;transition:transform .25s,box-shadow .25s;overflow:hidden}.woocommerce ul.products li.product a img{border-radius:18px;background:#faf9f3;transition:transform .3s}.woocommerce ul.products li.product .button{border-radius:30px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.35rem}.woocommerce div.product div.images img{border-radius:32px}.woocommerce div.product div.summary{background:#fffef9;padding:25px;border:1px solid #e1e5d8;border-radius:25px}.woocommerce div.product form.cart .variations th{display:block;text-align:left}.woocommerce div.product form.cart .variations td{display:block}.pp-format-buttons{display:flex;flex-wrap:wrap;gap:9px;margin:8px 0}.pp-format-buttons button{border:1px solid #aaba9d;background:#fff;color:#173f2a;border-radius:14px;padding:12px 18px;min-height:46px;cursor:pointer;font-weight:700}.pp-format-buttons button[aria-pressed="true"]{background:#173f2a;color:white;box-shadow:0 4px 0 #b7c997}.pp-format-buttons button:disabled{opacity:.4;cursor:not-allowed}.pp-format-enhanced{position:absolute!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;clip-path:inset(50%);overflow:hidden;padding:0!important;min-height:0!important;border:0!important}.pp-quantity-help{font-size:.85rem;color:#536456;margin:8px 0 16px}
@media(hover:hover) and (pointer:fine){.pp-shopping-choices>a:hover{transform:perspective(800px) translateY(-6px) rotateX(3deg);box-shadow:0 18px 30px #173f2a18}.pp-shopping-choices>a:hover .pp-choice-art{transform:rotate(-10deg) translateY(-3px)}.pp-basket:hover,.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:0 20px 35px #173f2a15}.pp-basket:hover .pp-basket-image img{transform:rotate(-3deg) scale(1.04)}.woocommerce ul.products li.product:hover a img{transform:scale(1.035)}.pp-button:hover{transform:translateY(-2px)}}
.pp-basket-live{position:relative;overflow:hidden;min-height:224px;padding:0;background:radial-gradient(circle at 50% 22%,#fffdf7 0 18%,#f3ead9 58%,#dfcba8 100%);border:1px solid #d0b58b;border-radius:28px;box-shadow:0 18px 34px #173f2a18;isolation:isolate;transform:rotate(-.45deg);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}.pp-basket-live::before{content:"";position:absolute;z-index:0;left:7%;right:7%;bottom:22px;height:80px;border-radius:9px 9px 25px 25px;background:repeating-linear-gradient(0deg,#a96732 0 13px,#c98a4e 14px 24px);border:3px solid #824b27;box-shadow:inset 0 8px 0 #e4ae6e,0 12px 20px #54341f42;transform:perspective(300px) rotateX(-7deg)}.pp-basket-live::after{content:"";position:absolute;z-index:9;left:4%;right:4%;bottom:42px;height:34px;border-radius:7px;background:linear-gradient(180deg,#d69a58,#9a5b2d);border:2px solid #7f4925;box-shadow:inset 0 5px 0 #edbd7b,0 7px 14px #54341f40}.pp-basket-live-grid{position:absolute;z-index:2;inset:17px 7% 54px;display:block}.pp-basket-live-item{position:absolute;display:block;width:40%;height:55%;overflow:visible;background:transparent;filter:drop-shadow(0 10px 8px #4a332743);transform-origin:50% 90%;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .45s}.pp-basket-live-item img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important;border-radius:22%!important;mix-blend-mode:multiply;transform:none!important}.pp-basket-live-item:nth-child(1){left:0;top:31%;z-index:4;transform:rotate(-9deg) scale(1.06)}.pp-basket-live-item:nth-child(2){left:19%;top:2%;z-index:2;transform:rotate(7deg)}.pp-basket-live-item:nth-child(3){right:18%;top:8%;z-index:3;transform:rotate(-4deg) scale(1.05)}.pp-basket-live-item:nth-child(4){right:-1%;top:34%;z-index:5;transform:rotate(10deg) scale(1.08)}.pp-basket-live-item:nth-child(5){left:20%;bottom:-1%;z-index:6;transform:rotate(4deg) scale(1.12)}.pp-basket-live-item:nth-child(6){right:20%;bottom:-5%;z-index:7;transform:rotate(-7deg) scale(1.12)}.pp-basket-live-grid[data-count="2"] .pp-basket-live-item,.pp-basket-live-grid[data-count="3"] .pp-basket-live-item{width:52%;height:72%}.pp-basket-live-grid[data-count="2"] .pp-basket-live-item:nth-child(1),.pp-basket-live-grid[data-count="3"] .pp-basket-live-item:nth-child(1){left:8%;top:20%}.pp-basket-live-grid[data-count="2"] .pp-basket-live-item:nth-child(2),.pp-basket-live-grid[data-count="3"] .pp-basket-live-item:nth-child(2){left:auto;right:7%;top:9%}.pp-basket-live-label{position:absolute;z-index:12;left:50%;bottom:49px;transform:translateX(-50%);white-space:nowrap;color:#fff8e9;font-size:.66rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 2px #3c2518}.pp-basket-live .pp-photo-arrow{z-index:13}@media(hover:hover) and (pointer:fine){.pp-basket:hover .pp-basket-live{transform:translateY(-5px) rotate(.45deg);box-shadow:0 24px 45px #173f2a24}.pp-basket:hover .pp-basket-live-item:nth-child(1){transform:translateY(-7px) rotate(-12deg) scale(1.1)}.pp-basket:hover .pp-basket-live-item:nth-child(2){transform:translateY(-11px) rotate(10deg) scale(1.03)}.pp-basket:hover .pp-basket-live-item:nth-child(3){transform:translateY(-8px) rotate(-7deg) scale(1.09)}.pp-basket:hover .pp-basket-live-item:nth-child(4){transform:translateY(-6px) rotate(13deg) scale(1.12)}.pp-basket:hover .pp-basket-live-item:nth-child(5){transform:translateY(-9px) rotate(1deg) scale(1.16)}.pp-basket:hover .pp-basket-live-item:nth-child(6){transform:translateY(-10px) rotate(-10deg) scale(1.16)}}@media(max-width:760px){.pp-basket-live{min-height:196px}.pp-basket-live-item{height:58%}}
.pp-arrived{animation:pp-rise .55s ease both}@keyframes pp-rise{from{opacity:.45;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.pp-shopping-choices>a{min-height:135px;padding:18px 20px 18px 80px;justify-content:center}.pp-choice-art{position:absolute;left:20px;top:40px;font-size:2rem}.pp-shopping-choices strong{margin-top:0}.pp-shopping-choices small{left:20px}.pp-hero{padding-block:25px}.pp-hero figure{transform:none}.pp-hero h1{font-size:clamp(2.65rem,10vw,3.4rem)}.woocommerce ul.products li.product{padding:12px;border-radius:18px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.1rem}.woocommerce div.product div.summary{padding:18px}.pp-basket h3{min-height:0}}
@media(prefers-reduced-motion:reduce){.pp-arrived{animation:none!important}.pp-hero figure,.pp-hero figcaption,.pp-shopping-choices>a:hover,.pp-basket:hover,.woocommerce ul.products li.product:hover,.pp-basket:hover img,.woocommerce ul.products li.product:hover a img{transform:none!important}html{scroll-behavior:auto}}

.pp-piece-varieties .pp-format-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.single-product div.product .summary form.variations_form.pp-piece-varieties .pp-format-buttons button{font-size:14px!important;line-height:1.3;min-height:46px;padding:11px 12px!important}
body.single-product div.product form.pp-piece-varieties .pp-piece-quantity-help{font-size:14px;line-height:1.5;margin:14px 0 8px;flex-basis:100%;color:#365f40}
body.single-product div.product form.pp-piece-varieties .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
body.single-product div.product form.pp-piece-varieties .quantity{margin:0!important;float:none!important}
.pp-quantity-stepper{display:inline-flex;align-items:center;gap:3px}.pp-quantity-stepper button{width:42px;height:46px;border:1px solid #b4c1a6;border-radius:12px;background:#eef3e5;color:#173f2a;font-size:1.4rem;cursor:pointer}.woocommerce .pp-quantity-stepper .qty{min-width:55px;width:60px;text-align:center;padding:8px}
.pp-rayons{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 14px;clear:both}.pp-rayons a{border:1px solid #b7c4ab;background:#fff;padding:10px 16px;border-radius:30px;min-height:44px;text-decoration:none;font-size:.9rem;font-weight:700}.pp-rayons a[aria-current=page]{background:#214f36;color:white}.pp-rayons a:hover{background:#f0e5bd;color:#173f2a}.pp-catalog-note{font-size:.85rem;color:#536456}.pp-quick-cart{margin-top:auto;min-width:0}.pp-quick-cart>label{font-size:.8rem;font-weight:700}.pp-quick-cart .variations{width:100%;margin:0 0 10px}.pp-quick-cart td{padding:0}.pp-quick-cart select{width:100%;min-height:44px;border:1px solid #9baa90;border-radius:10px;background:white;color:#173f2a;padding:8px}.pp-quick-cart .reset_variations{font-size:.75rem}.pp-quick-cart .pp-format-buttons button{padding:9px 12px;font-size:.8rem}.pp-quick-cart .pp-quantity-help{display:none}.pp-quick-cart .variations_button{display:flex;flex-direction:column;gap:12px}.woocommerce ul.products li.product .pp-quick-cart .button{width:100%;margin:0;padding:12px 8px}.pp-quick-cart .woocommerce-variation-price{margin:8px 0}.pp-quick-cart .woocommerce-variation-description{font-size:.8rem}.pp-quick-cart .stock{font-size:.8rem}.pp-quick-cart .quantity{float:none!important}.pp-quick-cart .qty{max-width:62px}.pp-quick-cart .disabled{opacity:.5}.woocommerce ul.products li.product:has(.pp-quick-cart)>.button{display:none}
@media(max-width:480px){.pp-rayons{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.pp-rayons a{white-space:nowrap;flex-shrink:0}.pp-quick-cart .pp-quantity-stepper button{width:32px}.pp-quick-cart .pp-format-buttons{gap:5px}.pp-quick-cart .pp-format-buttons button{padding:8px}.woocommerce .pp-quick-cart .pp-quantity-stepper .qty{width:42px;min-width:42px}}

.woocommerce ul.products li.product{position:relative}.pp-product-badges{position:absolute;z-index:3;top:28px;left:28px;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 56px);pointer-events:none}.pp-product-badge{display:inline-flex;align-items:center;min-height:27px;padding:5px 10px;border-radius:999px;background:#fff;color:#173f2a;border:1px solid #173f2a22;box-shadow:0 4px 12px #173f2a1f;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.pp-product-badge-promo{background:#b93520;color:#fff;border-color:#b93520}.pp-product-badge-local{background:#173f2a;color:#fff;border-color:#173f2a}.pp-product-badge-season{background:#f2c34d;color:#173f2a;border-color:#d4a92b}.pp-product-origin{display:flex;align-items:center;gap:6px;margin:0 0 7px;color:#536456;font-size:.78rem;font-weight:700;line-height:1.35}.pp-product-origin svg{width:15px;height:15px;flex:0 0 15px;fill:#b93520}.woocommerce div.product .summary>.pp-product-origin{font-size:.95rem;margin:0 0 15px}.pp-direct-piece,.pp-direct-piece td{height:0!important;padding:0!important;margin:0!important;border:0!important}.pp-direct-piece .pp-format-buttons{display:none!important}

/* Mobile guard: WooCommerce column classes must never squeeze the catalogue. */
@media(max-width:760px){
  body .woocommerce ul.products,
  body.woocommerce-page ul.products,
  body .woocommerce ul.products[class*="columns-"],
  body.woocommerce-page ul.products[class*="columns-"]{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
  }
  body .woocommerce ul.products li.product,
  body.woocommerce-page ul.products li.product{
    float:none!important;
    clear:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    overflow-wrap:anywhere;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:0;
    font-size:1.08rem;
    overflow-wrap:normal;
    word-break:normal;
  }
  .woocommerce ul.products li.product .price{font-size:1rem}
  .pp-product-badges{top:18px;left:18px;gap:4px;max-width:calc(100% - 36px)}
  .pp-product-badge{font-size:.61rem;min-height:23px;padding:4px 7px}
  .pp-product-origin{font-size:.7rem}
  .pp-quick-cart .variations_button{min-width:0}
  .pp-offers-tab,.pp-reception-tab{bottom:82px!important}
}
@media(max-width:340px){
  body .woocommerce ul.products,
  body.woocommerce-page ul.products,
  body .woocommerce ul.products[class*="columns-"],
  body.woocommerce-page ul.products[class*="columns-"]{grid-template-columns:1fr!important}
}


/* Conformité prix / origine et prix à l'unité. */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .pp-product-origin,
.woocommerce ul.products li.product .pp-unit-price{font-size:.875rem!important}
.pp-unit-price{display:block;margin:0 0 10px;color:#536456;font-weight:700;line-height:1.35}
.pp-unit-price strong{color:#173f2a}
.pp-unit-price span{font-size:.78em;font-weight:800;letter-spacing:.04em}
.woocommerce div.product .summary p.price,
.woocommerce div.product .summary span.price,
.woocommerce div.product .summary>.pp-product-origin,
.woocommerce div.product .summary>.pp-unit-price{font-size:1.25rem!important}
@media(max-width:760px){
 .woocommerce ul.products li.product .price,
 .woocommerce ul.products li.product .pp-product-origin,
 .woocommerce ul.products li.product .pp-unit-price{font-size:1rem!important}
}


/* Même hiérarchie visuelle sur la fiche produit. */
.woocommerce div.product div.summary p.price,
.woocommerce div.product div.summary span.price,
.woocommerce div.product div.summary .pp-product-origin,
.woocommerce div.product div.summary .pp-unit-price{font-size:1.25rem!important}
