/* Native Flatsome quick view, aligned with the shared product presentation. */
.product-lightbox.lightbox-content { width:min(1000px,calc(100vw - 40px));max-width:100%;margin:auto;border-radius:20px;background:#fff;overflow:auto;max-height:calc(100dvh - 60px); }
.product-lightbox .product-quick-view-container > .row { align-items:flex-start; }
.product-lightbox .product-gallery { position:sticky;top:0;padding:0; }
.product-lightbox .product-gallery-slider > .flickity-viewport { height:520px!important; }
.product-lightbox .product-gallery .slide img { width:100%;height:520px;object-fit:cover;object-position:center; }
.product-lightbox .product-type-bundle .product-gallery .slide img,.product-lightbox .product_cat-gift-sets-hampers .product-gallery .slide img { object-fit:contain; }
.product-lightbox .product-lightbox-inner { padding:30px!important;display:flex;flex-direction:column; }
.product-lightbox .product-lightbox-inner > .plain { order:0; }
.product-lightbox h1 { font-size:28px;line-height:1.22;font-weight:500;letter-spacing:-.4px;color:#000;margin:0 20px 14px 0; }
.product-lightbox .is-divider { order:0;background:#ec7b2c;height:3px;width:40px;margin:0 0 18px;border-radius:3px; }
.product-lightbox .price-wrapper { order:1; }
.product-lightbox .price { font-size:28px;line-height:1.4;color:#000;margin:0 0 6px; }
.product-lightbox .price del { font-size:18px;color:#777;font-weight:400; }
.product-lightbox .price ins { font-weight:600;text-decoration:none; }
.product-lightbox .product-lightbox-inner > .stock { order:2;font-size:13px;color:#444;margin:0 0 10px; }
.product-lightbox form.cart { order:3;display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 22px; }
.product-lightbox form.cart .quantity { display:flex;margin:0; }
.product-lightbox form.cart .quantity input { width:44px;height:48px;min-height:48px;margin:0;padding:0;box-shadow:none;font-size:16px;border-color:#ddd;background:#fff;color:#222; }
.product-lightbox form.cart .quantity .minus { border-radius:10px 0 0 10px; }
.product-lightbox form.cart .quantity .plus { border-radius:0 10px 10px 0; }
.product-lightbox .single_add_to_cart_button { flex:1;margin:0;min-height:48px;padding:10px 18px;border:0;border-radius:999px;background:#b01116!important;color:#fff;font-size:15px;line-height:1.4;text-transform:none;letter-spacing:0; }
.product-lightbox .product-short-description { order:4;font-size:14px;line-height:1.65; }
.product-lightbox .product-short-description h3 { font-size:18px;font-weight:500;margin:18px 0 6px; }
.product-lightbox .accordion-title { min-height:48px;padding:14px 30px 14px 0;font-size:14px;line-height:1.5;border-color:#e5e5e5;color:#222; }
.product-lightbox .accordion-title b { font-weight:500; }
.product-lightbox .accordion-title .toggle { left:auto;right:0;top:12px;opacity:1; }
.product-lightbox .accordion-inner { padding:8px 0 18px;font-size:13px;line-height:1.65; }
.product-lightbox .product_meta { order:5;font-size:12px;color:#777;margin-top:18px; }
.product-lightbox .badge-container { top:16px;left:16px;margin:0; }
.product-lightbox .badge { height:auto;width:auto; }
.product-lightbox .badge-inner { padding:5px 10px;border-radius:999px;background:#fff1e5;color:#8e0d12;font-size:13px;line-height:1.4; }
.mfp-wrap:has(.product-lightbox) .mfp-close { width:44px;height:44px;right:10px;top:10px;color:#222;background:#fff;border-radius:50%;opacity:1; }
.product-lightbox .product-type-bundle form.cart,.product-lightbox .product-type-variable form.cart,.product-lightbox .product-type-grouped form.cart { display:block; }
.product-lightbox .bundle_button,.product-lightbox .variations_button { display:flex;flex-wrap:wrap;gap:10px;align-items:center; }
.product-lightbox .bundled_product .price { font-size:16px; }
.product-lightbox .bundled_product .price del { font-size:14px; }
.product-lightbox :focus-visible { outline:2px solid #b01116;outline-offset:3px; }
@media(max-width:849px) {
 .product-lightbox.lightbox-content { width:calc(100vw - 24px);max-height:calc(100dvh - 60px);border-radius:16px; }
 .product-lightbox .product-gallery,.product-lightbox .product-info { flex-basis:100%;max-width:100%; }
 .product-lightbox .product-gallery { position:relative; }
 .product-lightbox .product-gallery-slider > .flickity-viewport { height:240px!important; }
 .product-lightbox .product-gallery .slide img { height:240px;object-fit:contain; }
 .product-lightbox .product-lightbox-inner { padding:20px!important; }
 .product-lightbox h1 { font-size:23px; }
 .product-lightbox .price { font-size:26px; }
 .product-lightbox form.cart .quantity input { width:40px; }
 .product-lightbox .single_add_to_cart_button { padding-inline:12px;font-size:14px; }
}

.product-lightbox .product-lightbox-inner > .price-wrapper .price { font-size:28px; }
@media(max-width:849px) { .product-lightbox .product-lightbox-inner > .price-wrapper .price { font-size:26px; } }

/* One clear route from browsing cards to the complete product page. */
body:not(.postid-61971) .quick-view { display:none!important; }

/* Let titles use their natural height; anchor price and CTA to each card's bottom. */
body .product-small.box:has(.cny-view-product) { display:flex;flex-direction:column;height:100%; }
body .product-small.box:has(.cny-view-product) > .box-text { display:flex;flex-direction:column;flex:1 1 auto; }
body .product-small.box:has(.cny-view-product) > .box-text > .price-wrapper { margin-top:auto!important; }
body .product-small.box:has(.cny-view-product) > .box-text > .cny-view-product { flex-shrink:0; }
