/* Product page: the main product's price (wrapped in .xo-main-price by XO Ordering), big */
.xo-main-price {
	display: inline-flex !important; flex-wrap: wrap; align-items: baseline; column-gap: 12px; row-gap: 6px;
	font-size: 2.25rem !important; line-height: 1.1 !important; font-weight: 800 !important; color: #1f2328 !important;
	font-family: var(--xo-font-head, inherit); margin: 4px 0 6px;
}
.xo-main-price * { font-size: inherit !important; font-weight: inherit !important; line-height: inherit !important; }
.xo-main-price .woocommerce-Price-currencySymbol { font-size: inherit !important; }
.xo-main-price .woocommerce-price-suffix, .xo-main-price small { font-size: 1rem !important; font-weight: 500 !important; color: #6b7280 !important; }
/* the block/theme wrapper around it shouldn't shrink it or add a second size */
.wp-block-woocommerce-product-price:has(.xo-main-price), .summary .price:has(.xo-main-price) { font-size: inherit !important; line-height: 1.1 !important; margin-bottom: 14px !important; }

/* On sale: sale price red first, regular price crossed out after it, then the "Save" pill */
.xo-main-price ins, .xo-main-price .wc-block-components-product-price__value.is-discounted { order: 1; text-decoration: none !important; color: #c92a2a !important; background: none !important; }
.xo-main-price del, .xo-main-price .wc-block-components-product-price__regular { order: 2; color: #6b7280 !important; opacity: 1 !important; text-decoration-thickness: 2px; }
.xo-main-price del, .xo-main-price del *, .xo-main-price .wc-block-components-product-price__regular, .xo-main-price .wc-block-components-product-price__regular * { font-size: 1.2rem !important; font-weight: 500 !important; }
.xo-main-price .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.xo-save {
	order: 3; display: inline-flex; align-items: center; padding: 4px 11px; border-radius: 999px; background: #c92a2a; color: #fff !important;
	font-size: 1rem !important; font-weight: 800 !important; letter-spacing: .01em; line-height: 1.25 !important; font-family: var(--xo-font-body, inherit); align-self: center;
}

/* "On Sale" ribbon on the photo */
body.xo-on-sale.single-product .woocommerce-product-gallery,
body.xo-on-sale.single-product .wp-block-woocommerce-product-image-gallery,
body.xo-on-sale.single-product .wp-block-woocommerce-product-gallery { position: relative; }
body.xo-on-sale.single-product .woocommerce-product-gallery::before,
body.xo-on-sale.single-product .wp-block-woocommerce-product-image-gallery::before,
body.xo-on-sale.single-product .wp-block-woocommerce-product-gallery::before {
	content: "On Sale"; position: absolute; z-index: 9; top: 14px; left: 14px; padding: 6px 14px; border-radius: 999px;
	background: #c92a2a; color: #fff; font-weight: 800; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase;
	box-shadow: 0 2px 8px rgba(0,0,0,.15); pointer-events: none; font-family: var(--xo-font-body, inherit);
}
/* Hide the theme's own sale bubble on the main product (it doubles up with the ribbon) — cards further down keep theirs */
body.xo-on-sale.single-product .onsale:not(:is(ul.products, .wc-block-product, .wp-block-woocommerce-product-template, .xo-row, .related, .upsells, .cross-sells, .wc-block-grid) *),
body.xo-on-sale.single-product .wc-block-components-product-sale-badge:not(:is(ul.products, .wc-block-product, .wp-block-woocommerce-product-template, .xo-row, .related, .upsells, .cross-sells, .wc-block-grid) *),
body.xo-on-sale.single-product .wp-block-woocommerce-product-sale-badge:not(:is(ul.products, .wc-block-product, .wp-block-woocommerce-product-template, .xo-row, .related, .upsells, .cross-sells, .wc-block-grid) *) { display: none !important; }

@media (max-width: 600px) { .xo-main-price { font-size: 1.9rem !important; } }
