.p2ag-page,.p2ag-buy,.p2ag-details{--p2-ink:#202326;--p2-muted:#62696e;--p2-line:#e0d6db;--p2-soft:#f6f1f4;--p2-accent:#84596C;--p2-accent-hover:#704b5b;color:var(--p2-ink);font-family:inherit;font-size:16px;line-height:1.55;box-sizing:border-box}
.p2ag-page *,.p2ag-buy *,.p2ag-details *{box-sizing:border-box}
.p2ag-page{width:100%;max-width:1240px;margin:0 auto;padding:30px 24px 60px}
.p2ag-page .woocommerce-breadcrumb{margin-bottom:28px;font-size:13px;color:var(--p2-muted)}
.p2ag-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:start}
.p2ag-gallery{min-width:0;padding:12px;background:var(--p2-soft);border-radius:14px}
.p2ag-gallery .woocommerce-product-gallery,.p2ag-gallery div.images{width:100%!important;float:none!important;margin:0!important}
.p2ag-gallery img{max-width:100%;height:auto}
.p2ag-summary{min-width:0}
.p2ag-summary h1.product_title{font-size:clamp(27px,3vw,38px);line-height:1.16;letter-spacing:-.025em;margin:0 0 18px;color:var(--p2-ink)}
.p2ag-eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--p2-muted);margin:0 0 12px;font-weight:650}
.p2ag-intro{color:var(--p2-muted);margin-bottom:24px}
.p2ag-intro p{margin:0 0 10px}
.p2ag-buy{border:1px solid var(--p2-line);border-radius:12px;padding:24px;background:#fff}
.p2ag-help{color:var(--p2-muted);font-size:14px;margin:0 0 18px}
.p2ag-buy form.cart{margin:0!important;display:block!important}
.p2ag-buy fieldset{min-width:0;border:0;padding:0;margin:0 0 22px}
.p2ag-buy legend{font-size:15px;font-weight:650;margin:0 0 9px;padding:0;color:var(--p2-ink);width:100%}
.p2ag-options{display:flex;gap:8px;flex-wrap:wrap}
.p2ag-buy .p2ag-options button{appearance:none;border:1px solid var(--p2-line);background:#fff;color:var(--p2-ink);padding:12px 16px;border-radius:8px;line-height:1.35;font:inherit;font-size:15px;text-align:left;cursor:pointer;min-height:46px;box-shadow:none;transition:background .12s,border-color .12s}
.p2ag-buy button.p2ag-format-option{flex:1 1 110px;display:flex;flex-direction:column;gap:3px}
.p2ag-buy button.p2ag-quantity{min-width:66px;text-align:center;font-weight:650}
.p2ag-buy .p2ag-options button:hover{background:var(--p2-soft);border-color:var(--p2-accent)}
.p2ag-buy .p2ag-options button[aria-pressed=true]{border:2px solid var(--p2-accent);padding:11px 15px;background:var(--p2-soft);color:var(--p2-ink)}
.p2ag-buy .p2ag-options button:disabled{opacity:.45;cursor:not-allowed;background:#f5f5f5;border-color:var(--p2-line)}
.p2ag-buy button:focus-visible,.p2ag-buy a:focus-visible,.p2ag-buy select:focus-visible,.p2ag-faq summary:focus-visible{outline:3px solid var(--p2-accent);outline-offset:3px}
.p2ag-format-price{font-size:17px;font-weight:650}
.p2ag-format-ratio{font-size:12px;color:var(--p2-muted)}
.p2ag-comparison-note{color:var(--p2-muted);font-size:12px;margin:-12px 0 14px}
.p2ag-buy .variations{width:100%;border:0;margin:0 0 12px}
.p2ag-buy .variations tr:not(.p2ag-enhanced-row){background:transparent}
.p2ag-buy .variations th,.p2ag-buy .variations td{border:0;background:transparent;padding:6px 0}
.p2ag-buy .p2ag-enhanced-row{display:none!important}
.p2ag-buy .reset_variations{display:inline-block;margin:0 0 12px;font-size:12px;color:var(--p2-muted)}
.p2ag-buy .woocommerce-variation-price,.p2ag-buy>.price{margin:8px 0 15px;font-size:24px;font-weight:600}
.p2ag-buy .price{color:var(--p2-ink)}
.p2ag-buy .woocommerce-variation-add-to-cart{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.p2ag-buy .p2ag-quantities{flex:0 0 100%;margin:10px 0 4px}
.p2ag-quantity-note{font-size:13px;color:var(--p2-muted);margin:9px 0 12px;min-height:0}
.p2ag-quantity-note:empty{display:none}
.p2ag-buy .quantity{float:none!important;display:inline-block;margin:0!important}
.p2ag-buy input.qty{width:72px;min-height:48px;border:1px solid var(--p2-line);border-radius:7px;padding:8px;text-align:center;background:#fff;color:var(--p2-ink);font:inherit}
.p2ag-buy.woocommerce form.cart button.single_add_to_cart_button.button{float:none!important;flex:1 1 180px;border:0;border-radius:7px;background:var(--p2-button-bg,var(--p2-accent));color:var(--p2-button-text,#fff);padding:14px 20px;min-height:48px;font:inherit;font-weight:650;cursor:pointer;white-space:normal}
.p2ag-buy.woocommerce form.cart button.single_add_to_cart_button.button.disabled{opacity:.5}
.p2ag-buy.woocommerce form.cart button.single_add_to_cart_button.button:hover:not(:disabled):not(.disabled){background:var(--p2-button-hover-bg,var(--p2-accent-hover))}
.p2ag-selected-unit,.p2ag-unit{font-size:13px;color:var(--p2-muted);margin-top:12px}
.p2ag-selected-unit:empty,.p2ag-unit:empty{display:none}
/* Subscriptions 9 also renders a one-time/subscribe prompt inside the price area.
   Keep native controls and visibility rules; prevent inheritance of the headline price font. */
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-wrapper,.wcsatt-options-product-wrapper,.wcsatt-options-product-prompt,.wcsatt-options-product-dropdown,ul.wcsatt-options-product,ul.wcsatt-options,ul.wcsatt-options-prompt-radios){width:100%;max-width:100%;clear:both;font-family:inherit;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:normal;color:var(--p2-ink);text-transform:none}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-wrapper,.wcsatt-options-product-wrapper){margin:16px 0}
.p2ag-buy.woocommerce form.cart :is(ul.wcsatt-options-product,ul.wcsatt-options,ul.wcsatt-options-prompt-radios){list-style:none;padding:0;margin:8px 0}
.p2ag-buy.woocommerce form.cart :is(ul.wcsatt-options-product,ul.wcsatt-options,ul.wcsatt-options-prompt-radios)>li{list-style:none;border:1px solid var(--p2-line);border-radius:8px;margin:8px 0!important;padding:12px;font-size:15px;line-height:1.5;background:#fff}
.p2ag-buy.woocommerce form.cart :is(ul.wcsatt-options-product,ul.wcsatt-options,ul.wcsatt-options-prompt-radios)>li:has(input[type=radio]:checked){border-color:var(--p2-accent);background:var(--p2-soft);box-shadow:none}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-wrapper,.wcsatt-options-product-wrapper,.wcsatt-options-product-prompt,.wcsatt-options-product-dropdown,ul.wcsatt-options-product,ul.wcsatt-options) label{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;letter-spacing:normal;color:var(--p2-ink);text-transform:none;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.p2ag-buy.woocommerce form.cart :is(ul.wcsatt-options-product,ul.wcsatt-options,ul.wcsatt-options-prompt-radios)>li>label{display:flex;align-items:flex-start;gap:8px;margin:0}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-wrapper,.wcsatt-options-product-wrapper,.wcsatt-options-product-prompt,ul.wcsatt-options-product,ul.wcsatt-options) input:is([type=radio],[type=checkbox]){flex:0 0 16px;width:16px;height:16px;min-width:16px;margin:3px 0 0!important;accent-color:var(--p2-accent)}
.p2ag-buy.woocommerce form.cart .wcsatt-options-product-prompt-radio label>span{padding-left:0;min-width:0}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-product-prompt,ul.wcsatt-options-product,ul.wcsatt-options) :is(.price,.subscription-price,.subscription-details){font-size:inherit;font-weight:inherit;line-height:inherit;color:inherit}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-product-dropdown,.wcsatt-options-product-wrapper,.wcsatt-options-wrapper) select{width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--p2-line);border-radius:7px;background-color:#fff;font:inherit;font-size:15px;color:var(--p2-ink)}
.p2ag-buy.woocommerce form.cart :is(.wcsatt-options-product-wrapper,.wcsatt-options-wrapper,.wcsatt-options-product-prompt) input:focus-visible{outline:3px solid var(--p2-accent);outline-offset:3px}
.p2ag-buy.woocommerce form.cart .woocommerce-variation-price .price{color:var(--p2-ink)}
.p2ag-buy.woocommerce form.cart .stock.in-stock{color:var(--p2-muted);font-size:13px;font-weight:400}
.p2ag-buy [hidden]{display:none!important}
.p2ag-reorder-hint{font-size:13px;color:var(--p2-muted);margin:10px 0}
.p2ag-packs{border-top:1px solid var(--p2-line);margin-top:22px;padding-top:18px}
.p2ag-packs h3{font-size:15px;margin:0 0 10px}
.p2ag-pack{display:flex;justify-content:space-between;gap:14px;border:1px solid var(--p2-line);border-radius:7px;padding:12px;color:var(--p2-ink);margin:7px 0;text-decoration:none;font-size:14px}
.p2ag-page .p2ag-details{margin-top:48px}
.p2ag-section{border-top:1px solid var(--p2-line);padding:26px 0}
.p2ag-section h2{font-size:23px;line-height:1.25;margin:0 0 20px;color:var(--p2-ink)}
.p2ag-section h3{font-size:15px;line-height:1.4;margin:0 0 7px;font-weight:650;color:var(--p2-ink)}
.p2ag-detail{margin-bottom:18px;overflow-wrap:anywhere;max-width:900px}
.p2ag-detail:last-child{margin-bottom:0}
.p2ag-detail p{margin:0 0 10px}
.p2ag-detail a,.p2ag-section a{color:var(--p2-accent);text-decoration:underline;text-underline-offset:3px}
.p2ag-faq details{padding:15px 0;border-bottom:1px solid var(--p2-line)}
.p2ag-faq summary{cursor:pointer;font-weight:600;font-size:16px}
.p2ag-faq details p{margin:12px 0 0}
.p2ag-field:empty{display:none}
.p2ag-reviews{border-top:1px solid var(--p2-line);padding-top:28px}
.p2ag-admin-hint{font:13px/1.5 system-ui,sans-serif;background:#fff5d9;color:#56441a;padding:12px;border-left:3px solid #d3ae57}
@media(max-width:767px){.p2ag-page{padding:18px 16px 40px}.p2ag-hero{grid-template-columns:1fr;gap:25px}.p2ag-buy{padding:18px}.p2ag-gallery{padding:8px}.p2ag-page .p2ag-details{margin-top:30px}.p2ag-section{padding:22px 0}.p2ag-section h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.p2ag-buy .p2ag-options button{transition:none}}

.p2ag-page .product_meta{font-size:12px;line-height:1.7;color:var(--p2-muted);margin-top:14px}.p2ag-page .product_meta>span{display:block}.p2ag-page .product_meta a{color:var(--p2-accent)}

/* 0.4.0 — shared sections, including standalone Elementor widgets. */
.p2ag-block,.p2ag-index{--p2-ink:#202326;--p2-muted:#62696e;--p2-line:#e0d6db;--p2-accent:#84596c;color:var(--p2-ink);font-family:inherit;box-sizing:border-box}
.p2ag-block[hidden],.p2ag-field[hidden],.p2ag-auto-section[hidden],.p2ag-auto-link[hidden],.p2ag-auto-link [hidden],.p2ag-index[hidden],.p2ag-index [hidden]{display:none!important}
.p2ag-index{display:flex;flex-wrap:wrap;gap:4px 18px;padding:12px 0;border-block:1px solid var(--p2-line);margin:18px 0}
.p2ag-index a{display:inline-flex;align-items:center;min-height:44px;color:var(--p2-accent);font-size:14px;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.p2ag-block{scroll-margin-top:90px;min-width:0;overflow-wrap:anywhere}
.p2ag-block-body>:last-child{margin-bottom:0}


/* 0.10.8 — Elementor SKU/stock widgets synchronized with the active WooCommerce variation. */
.p2-stock-widget .stock,.p2-stock-widget .p2-elementor-stock-output{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;background:transparent;border:0;font:inherit;line-height:1.2}
.p2-stock-widget .stock::before,.p2-stock-widget .p2-stock-dot{content:"";display:block;width:8px;height:8px;flex:0 0 8px;border-radius:50%}
.p2-stock-widget.p2-is-instock .stock,.p2-stock-widget.p2-is-instock .p2-elementor-stock-output{color:#267653}
.p2-stock-widget.p2-is-instock .stock::before,.p2-stock-widget.p2-is-instock .p2-stock-dot{background:#3daa72;animation:p2StockPulse 1.8s ease-out infinite}
.p2-stock-widget.p2-is-outofstock .stock,.p2-stock-widget.p2-is-outofstock .p2-elementor-stock-output{color:#9c5e58}
.p2-stock-widget.p2-is-outofstock .stock::before,.p2-stock-widget.p2-is-outofstock .p2-stock-dot{background:#c77e76}
.p2-stock-widget.p2-is-backorder .stock,.p2-stock-widget.p2-is-backorder .p2-elementor-stock-output{color:#9a742b}
.p2-stock-widget.p2-is-backorder .stock::before,.p2-stock-widget.p2-is-backorder .p2-stock-dot{background:#d0a443}
@keyframes p2StockPulse{0%{box-shadow:0 0 0 0 rgba(61,170,114,.35)}70%{box-shadow:0 0 0 5px rgba(61,170,114,0)}100%{box-shadow:0 0 0 0 rgba(61,170,114,0)}}
@media(prefers-reduced-motion:reduce){.p2-stock-widget.p2-is-instock .stock::before,.p2-stock-widget.p2-is-instock .p2-stock-dot{animation:none}}

/* 0.10.9 - Dedicated variation metadata widgets. */
.p2-variation-stock{display:inline-flex;align-items:center;gap:8px;width:fit-content;line-height:1.2}
.p2-variation-stock .p2-stock-dot{display:block;width:8px;height:8px;flex:0 0 8px;border-radius:50%}
.p2-variation-stock.p2-stock-instock{color:var(--p2-stock-in,#267653)}
.p2-variation-stock.p2-stock-instock .p2-stock-dot{background:var(--p2-stock-dot-in,#3daa72)}
.p2-variation-stock.p2-stock-instock.p2-stock-pulse .p2-stock-dot{animation:p2StockPulse 1.8s ease-out infinite}
.p2-variation-stock.p2-stock-outofstock{color:var(--p2-stock-out,#9c5e58)}
.p2-variation-stock.p2-stock-outofstock .p2-stock-dot{background:var(--p2-stock-dot-out,#c77e76)}
.p2-variation-stock.p2-stock-onbackorder{color:var(--p2-stock-backorder,#9a742b)}
.p2-variation-stock.p2-stock-onbackorder .p2-stock-dot{background:var(--p2-stock-dot-backorder,#d0a443)}
.p2-variation-sku[hidden],.p2-variation-stock[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.p2-variation-stock.p2-stock-pulse .p2-stock-dot{animation:none}}

/* 0.10.13: when 2P Acquisto guidato owns the purchase UI, permanently suppress
   the duplicate native WooCommerce / Subscriptions add-to-cart widget for the
   same product. Stock and back-in-stock widgets remain independent. */
.p2ag-native-purchase-suppressed {
  display: none !important;
}

/* 0.11.6: reusable stock-based visibility for optional product-page boxes.
   Add `p2p-hide-when-unavailable` to the outer Elementor container.
   Keep the previous volume-discount class as a backwards-compatible alias.
   Only hide: never force display when available, so independent visibility
   rules (for example, a routine without valid upsells) remain in control. */
body.p2ag-product-out-of-stock .p2p-hide-when-unavailable,
body.p2ag-variation-out-of-stock .p2p-hide-when-unavailable,
body.p2ag-product-out-of-stock .p2p-volume-discount-box,
body.p2ag-variation-out-of-stock .p2p-volume-discount-box {
  display: none !important;
}
