/* Licious: calm ivory surfaces, legible ink, gold reserved for detail. */
body.pd-storefront { --pd-ink:#111; --pd-muted:#514d46; --pd-line:#ddd6c9; --pd-ivory:#f8f5ef; }
body.pd-storefront :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline:2px solid #80611e; outline-offset:4px; }
body.pd-storefront :where(input,select,textarea,button,a,summary) { touch-action:manipulation; }
body.pd-storefront #main :where(h1,h2,h3,[id]) { scroll-margin-top:104px; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-envelope { animation:none; background-image:none!important; background-color:rgba(248,245,239,.97)!important; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-icon-btn,
body.pd-storefront #pan-widget-5e8a1c4b .ph-menu-toggle,
body.pd-storefront #pan-widget-5e8a1c4b .ph-drawer-close { min-width:44px; min-height:44px; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-nav-list>li>a.lh-current { color:#70551c!important; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-nav-list>li>a::before { content:none; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-m-acc-panel[aria-hidden="true"] { visibility:hidden; }
body.pd-storefront #pan-widget-5e8a1c4b .ph-envelope:focus-within { transform:none!important; }
body.pd-storefront #pan-widget-5e8a1c4b :where(a,button,input):focus-visible { outline:2px solid #67501f; outline-offset:4px; }

/* Product discovery remains the existing WooCommerce grid and real category filters. */
body.pd-storefront .licious-filterbar .lf-chip,
body.pd-storefront #lhfilter .lhf-chip,
body.pd-storefront #lhfilter .lhf-clear { min-height:44px; display:inline-flex; align-items:center; justify-content:center; }
body.pd-storefront #lhfilter .lhf-chip.is-on { background:#111; color:#f8f5ef; border-color:#111; }
body.pd-storefront .woocommerce-ordering select { min-height:44px; color:#111; }
body.pd-storefront .products .woocommerce-loop-product__title { line-height:1.45; letter-spacing:.04em; }
body.pd-storefront .products .price { color:#34312c; }
body.pd-storefront .hero-content .pd-shop-jump { display:block; width:max-content; margin:8px auto 0; padding:10px 12px; min-height:44px; color:#f8f5ef; font:500 .82rem/1.5 var(--lh-sans,Arial,sans-serif); letter-spacing:.035em; text-decoration:underline; text-underline-offset:4px; }
body.pd-storefront #pd-collection-grid { scroll-margin-top:110px; }
body.pd-storefront .hero-content .pd-shop-jump:focus-visible { outline-color:#e6c875; }

/* Blocksy already supplies two grid tracks; old flex widths halved each track again. */
body.pd-storefront.single-product .product-entry-wrapper>.woocommerce-product-gallery,
body.pd-storefront.single-product .product-entry-wrapper>.summary { width:100%; max-width:100%; min-width:0; float:none; }
body.pd-storefront.single-product .ct-product-gallery-container { display:flex; flex-direction:column; gap:14px; }
body.pd-storefront.single-product .ct-product-gallery-container>.flexy-container { order:0; min-width:0; width:100%; }
/* Blocksy writes a 3/4 ratio inline even for square originals. Preserve each source ratio. */
body.pd-storefront.single-product .ct-product-gallery-container .flexy-items .ct-media-container img { aspect-ratio:auto!important; height:auto; }
body.pd-storefront.single-product .pd-product-film { order:1; width:100%; border-block:1px solid var(--pd-line); color:var(--pd-ink); }
body.pd-storefront.single-product .pd-product-film summary { min-height:48px; padding:12px 2px; cursor:pointer; font-size:.9rem; font-weight:500; }
body.pd-storefront.single-product .pd-product-film video { display:block; width:100%; max-height:65vh; object-fit:contain; background:#111; }
body.pd-storefront.single-product .summary .product_title { font-size:clamp(1.9rem,3.5vw,3rem); line-height:1.1; margin-bottom:.25em; letter-spacing:.015em; }
body.pd-storefront.single-product .pd-product-facts { color:var(--pd-muted); font-size:.9rem; line-height:1.6; margin:0 0 1.25rem; }
body.pd-storefront.single-product .pd-product-facts ul { margin:0; padding-left:1.15em; }
body.pd-storefront.single-product .pd-product-facts li { margin:.15em 0; }
body.pd-storefront.single-product .lv-chip { min-height:44px; min-width:56px; border-radius:5px; color:#67501f; }
body.pd-storefront.single-product .lv-chip.selected { color:#f8f5ef; box-shadow:none; background:#111; border-color:#111; transform:none; }
body.pd-storefront.single-product .lv-chip:focus-visible { outline:2px solid #111; outline-offset:3px; }
body.pd-storefront.single-product .lv-attr-label { font-size:.78rem; letter-spacing:.08em; }
body.pd-storefront.single-product .lv-attr-label .lv-selected { color:#67501f; }
body.pd-storefront.single-product .licious-variations { margin-bottom:1rem; }
body.pd-storefront.single-product .summary form.cart { margin-bottom:1rem; }
body.pd-storefront.single-product .summary .licious-bnpl { gap:8px; margin:.65rem 0 1.25rem; }
body.pd-storefront.single-product .licious-bnpl-text { font-size:.86rem; line-height:1.4; color:var(--pd-muted); }
body.pd-storefront.single-product .licious-bnpl-logo { height:24px; }
body.pd-storefront.single-product .pd-payment-details { margin:.4rem 0 1rem; font-size:.86rem; color:var(--pd-muted); }
body.pd-storefront.single-product .pd-payment-details summary { cursor:pointer; min-height:44px; padding:10px 0; }
body.pd-storefront.single-product .pd-payment-details .pjnsinglepage { margin:0; }
body.pd-storefront.single-product .pd-delivery-note { font-size:.84rem; line-height:1.65; color:var(--pd-muted); background:var(--pd-ivory); border-left:2px solid #c9a24a; padding:12px 14px; margin:0 0 1.2rem; }
body.pd-storefront.single-product .pd-delivery-note p { margin:0; }
body.pd-storefront.single-product .pd-delivery-note a { color:#554216; display:inline-block; text-decoration:underline; text-underline-offset:3px; padding:5px 0; }
body.pd-storefront.single-product .woocommerce-product-details__short-description.pd-refined-description { border:0; padding:0; margin:0 0 1.25rem; width:100%; }
body.pd-storefront.single-product .pd-product-details { border-block:1px solid var(--pd-line); padding:0; }
body.pd-storefront.single-product .pd-product-details summary { color:var(--pd-ink); padding:13px 0; min-height:48px; cursor:pointer; font-size:.9rem; font-weight:500; }
body.pd-storefront.single-product .pd-product-details .pd-details-content { padding:0 0 12px; color:var(--pd-muted); }
body.pd-storefront.single-product .licious-sticky-atc { background:#111; box-shadow:0 -2px 12px #00000016; }
body.pd-storefront.single-product .licious-sticky-atc .lsa-price { white-space:normal; font-size:.94rem; }
body.pd-storefront.single-product .licious-sticky-atc .lsa-note { color:#e6c875; font-size:.65rem; }
body.pd-storefront.single-product .licious-sticky-atc .lsa-btn { min-height:46px; padding:12px 18px; letter-spacing:.06em; box-shadow:none; border:1px solid #c9a24a; background:#111; }
body.pd-storefront.single-product .licious-sticky-atc[aria-hidden="true"] { visibility:hidden; }

@media(max-width:1023px) {
 body.pd-storefront .woocommerce-ordering { width:auto; min-width:190px; }
 body.pd-storefront .woocommerce-ordering select { width:100%; font-size:.82rem!important; text-indent:0!important; padding-left:12px; padding-right:32px; }
}
@media(max-width:768px) {
 body.pd-storefront.single-product #main>.ct-container-full { padding-top:22px; }
 body.pd-storefront.single-product .product-entry-wrapper { row-gap:24px; }
 body.pd-storefront.single-product .licious-breadcrumb { font-size:.66rem; line-height:1.6; padding-inline:16px; margin-bottom:14px; }
 body.pd-storefront.single-product .ct-product-gallery-container .flexy-items .ct-media-container img { max-height:56svh; object-fit:contain; background:var(--pd-ivory); }
 body.pd-storefront.single-product .summary .product_title { font-size:2rem; }
 body.pd-storefront.single-product .pd-product-facts { font-size:.88rem; }
 body.pd-storefront.single-product .licious-sticky-atc { gap:10px; }
 body.pd-storefront.single-product .summary { padding-bottom:24px; }
}
@media(prefers-reduced-motion:reduce) {
 body.pd-storefront *,body.pd-storefront *::before,body.pd-storefront *::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
