/*
 * BeJoyi - single product page, matched to the live Elementor template (post 1237).
 *
 * Every font size, weight, colour and letter-spacing below was read from the
 * live stylesheet's .elementor-1237 rules, so this is a port rather than an
 * approximation. All rules are scoped to body.bejoyi-live-single.
 */

/* ---------------------------------------------------------------------------
 * Fonts. The files already exist in staging's uploads directory (they are the
 * same media library paths live uses), they were simply never declared here.
 * ------------------------------------------------------------------------ */

@font-face {
	font-family: "Raleway Regular";
	src: url("/wp-content/uploads/2026/07/Raleway-Regular.ttf") format("truetype");
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Raleway Medium";
	src: url("/wp-content/uploads/2026/07/Raleway-Medium.ttf") format("truetype");
	font-weight: 400 600;
	font-display: swap;
}

@font-face {
	font-family: "Roxborough Regular Font";
	src: url("/wp-content/uploads/2026/04/RoxboroughCF-Regular.otf") format("opentype");
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Roxborough Medium Font";
	src: url("/wp-content/uploads/2026/04/RoxboroughCF-Medium.otf") format("opentype");
	font-weight: 500;
	font-display: swap;
}

body.bejoyi-live-single {
	--bejoyi-red: #8a1818;
	--bejoyi-dark: #292929;
	--bejoyi-cream: #fff8ee;
	--bejoyi-line: #d0d0d0;
	--bejoyi-sans: "Raleway Medium", "Raleway", sans-serif;
	--bejoyi-sans-reg: "Raleway Regular", "Raleway", sans-serif;
	--bejoyi-serif: "Roxborough Medium Font", "Roxborough Regular Font", serif;
}

/* ---------------------------------------------------------------------------
 * Hide the pieces live does not show.
 *
 * Blocksy renders the summary from its own element system, so these are hidden
 * rather than unhooked - the equivalent content is re-rendered by
 * inc/bejoyi-single-product.php in live's order and styling.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .entry-summary > p.price,
body.bejoyi-live-single .entry-summary > .ct-product-divider,
body.bejoyi-live-single .entry-summary .woocommerce-product-details__short-description,
body.bejoyi-live-single .entry-summary .product_meta,
body.bejoyi-live-single .ct-product-add-to-cart > p.stock,
body.bejoyi-live-single .bejoyi-trust-badges,
body.bejoyi-live-single .woocommerce-tabs,
body.bejoyi-live-single .related.products,
body.bejoyi-live-single .ct-product-gallery-container > .onsale {
	display: none !important;
}

/* ---------------------------------------------------------------------------
 * Breadcrumbs - live shows a full-width dark red pill with white text.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .ct-breadcrumbs {
	background: var(--bejoyi-red);
	border-radius: 60px;
	padding: 14px 32px;
	margin: 26px 0 34px;
	font-family: var(--bejoyi-sans);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.6px;
	text-transform: none;
	color: #fff;
}

body.bejoyi-live-single .ct-breadcrumbs a,
body.bejoyi-live-single .ct-breadcrumbs span,
body.bejoyi-live-single .ct-breadcrumbs li {
	color: #fff;
	text-decoration: none;
}

body.bejoyi-live-single .ct-breadcrumbs a:hover {
	color: var(--bejoyi-cream);
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------
 * Product title / price / stock.
 * Live: title Raleway Medium 62px/74px #292929; "Rs." 30px/600 red;
 * amount Roxborough Medium 50px; stock Raleway Medium 18px #84DD3C.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .entry-summary .product_title {
	font-family: var(--bejoyi-sans);
	font-size: 62px;
	font-weight: 500;
	line-height: 74px;
	color: var(--bejoyi-dark);
	margin: 0 0 26px;
	text-transform: none;
	letter-spacing: 0;
}

body.bejoyi-live-single .bejoyi-lp-price-row {
	display: flex;
	align-items: baseline;
	gap: 14px;
	margin: 0 0 10px;
}

body.bejoyi-live-single .bejoyi-lp-price-label {
	font-family: var(--bejoyi-sans);
	font-size: 30px;
	font-weight: 600;
	color: var(--bejoyi-red);
	line-height: 1;
}

body.bejoyi-live-single .bejoyi-lp-price-value,
body.bejoyi-live-single .bejoyi-lp-price-value .woocommerce-Price-amount {
	font-family: var(--bejoyi-serif);
	font-size: 50px;
	font-weight: 500;
	color: var(--bejoyi-dark);
	line-height: 1.1;
}

/* Live drops the rupee glyph - the "Rs." label already carries the currency. */
body.bejoyi-live-single .bejoyi-lp-price-value .woocommerce-Price-currencySymbol {
	display: none;
}

body.bejoyi-live-single .bejoyi-lp-price-value ins {
	text-decoration: none;
}

/* Desktop shows the sale price only; the original appears on mobile, as on live. */
body.bejoyi-live-single .bejoyi-lp-price-value del {
	display: none;
}

body.bejoyi-live-single .bejoyi-lp-stock {
	font-family: var(--bejoyi-sans);
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 1px;
	color: #84dd3c;
	margin: 0 0 22px;
}

body.bejoyi-live-single .bejoyi-lp-stock--out {
	color: var(--bejoyi-red);
}

/* ---------------------------------------------------------------------------
 * Cart row - live puts the quantity stepper, an outlined "Add to Cart" and an
 * outlined red "Buy Now" on one line, above a plain wishlist link.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .ct-product-add-to-cart {
	border-top: 1px solid #29292920;
	padding-top: 26px;
	margin-top: 4px;
}

body.bejoyi-live-single form.cart .ct-cart-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 14px;
}

body.bejoyi-live-single form.cart .quantity:not(.hidden) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 140px;
	height: 50px;
	padding: 0 16px;
	border: 1px solid var(--bejoyi-line);
	border-radius: 50px;
	background: #fff;
}

body.bejoyi-live-single form.cart .quantity:not(.hidden) input.qty {
	width: 46px;
	border: 0;
	background: none;
	text-align: center;
	font-family: var(--bejoyi-sans);
	font-size: 16px;
	color: var(--bejoyi-red);
	box-shadow: none;
}

body.bejoyi-live-single form.cart .quantity .ct-increase,
body.bejoyi-live-single form.cart .quantity .ct-decrease {
	color: var(--bejoyi-red);
	cursor: pointer;
}

body.bejoyi-live-single form.cart .single_add_to_cart_button,
body.bejoyi-live-single form.cart .buy-now-button {
	flex: 0 1 200px;
	min-width: 170px;
	height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 5px;
	border: 1px solid var(--bejoyi-dark);
	background: transparent !important;
	background-color: transparent !important;
	color: var(--bejoyi-dark) !important;
	font-family: var(--bejoyi-sans);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.6px;
	text-transform: none;
	text-decoration: none;
	box-shadow: none;
	transition: background-color 0.25s ease, color 0.25s ease;
}

body.bejoyi-live-single form.cart .single_add_to_cart_button:hover {
	background: var(--bejoyi-dark) !important;
	background-color: var(--bejoyi-dark) !important;
	color: #fff !important;
}

body.bejoyi-live-single form.cart .buy-now-button {
	border-color: var(--bejoyi-red);
	color: var(--bejoyi-red) !important;
	font-family: var(--bejoyi-serif);
	font-size: 15px;
}

body.bejoyi-live-single form.cart .buy-now-button:hover {
	background: var(--bejoyi-red) !important;
	background-color: var(--bejoyi-red) !important;
	color: #fff !important;
}

/* Wishlist link under the buttons. */
body.bejoyi-live-single .yith-add-to-wishlist-button-block,
body.bejoyi-live-single .yith-wcwl-add-to-wishlist {
	margin: 18px 0 0;
}

body.bejoyi-live-single .yith-wcwl-add-to-wishlist a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-family: var(--bejoyi-sans);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.5px;
	color: var(--bejoyi-dark);
	text-decoration: none;
	background: none;
	border: 0;
	padding: 0;
}

body.bejoyi-live-single .yith-wcwl-add-to-wishlist a:hover {
	color: var(--bejoyi-red);
}

/* ---------------------------------------------------------------------------
 * Vendor / SKU rows - label 11px/600 #29292969, value 12px/500 #29292999.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-meta {
	border-top: 1px solid #29292920;
	margin-top: 26px;
	padding-top: 22px;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

body.bejoyi-live-single .bejoyi-lp-meta-row {
	display: flex;
	align-items: center;
	gap: 14px;
}

body.bejoyi-live-single .bejoyi-lp-meta-label {
	font-family: var(--bejoyi-sans);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 2px;
	color: #29292969;
	text-transform: uppercase;
}

body.bejoyi-live-single .bejoyi-lp-meta-value {
	font-family: var(--bejoyi-sans);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 2px;
	color: #29292999;
}

/* ---------------------------------------------------------------------------
 * Accordions. Summary variant: Raleway Medium 15px/400, ls .9px, colour
 * #29292999, 1px bottom border, 20px 0 20px 10px padding (live element 3647d38).
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-accordion {
	margin-top: 26px;
}

body.bejoyi-live-single .bejoyi-lp-acc-head {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px 0 20px 10px;
	background: #fff;
	border: 0;
	border-bottom: 1px solid #29292940;
	font-family: var(--bejoyi-sans);
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.9px;
	color: #29292999;
	cursor: pointer;
	text-align: left;
	transition: color 0.25s ease;
}

body.bejoyi-live-single .bejoyi-lp-acc-head:hover {
	color: var(--bejoyi-red);
}

body.bejoyi-live-single .bejoyi-lp-acc-title {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

body.bejoyi-live-single .bejoyi-lp-ico {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
}

/* The +/- sign on the right, drawn in brand red. */
body.bejoyi-live-single .bejoyi-lp-acc-sign {
	position: relative;
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
}

body.bejoyi-live-single .bejoyi-lp-acc-sign::before,
body.bejoyi-live-single .bejoyi-lp-acc-sign::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 14px;
	height: 1.5px;
	background: var(--bejoyi-red);
	transform: translateY(-50%);
	transition: transform 0.25s ease, opacity 0.25s ease;
}

body.bejoyi-live-single .bejoyi-lp-acc-sign::after {
	transform: translateY(-50%) rotate(90deg);
}

body.bejoyi-live-single .bejoyi-lp-acc-item.is-open .bejoyi-lp-acc-sign::after {
	transform: translateY(-50%) rotate(0deg);
	opacity: 0;
}

/* Collapsed by default; opened by toggling max-height via the script. */
body.bejoyi-live-single .bejoyi-lp-acc-panel {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.25s ease-in-out;
}

body.bejoyi-live-single .bejoyi-lp-acc-item.is-open .bejoyi-lp-acc-panel {
	max-height: none;
}

body.bejoyi-live-single .bejoyi-lp-acc-inner {
	padding: 18px 10px 26px;
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	line-height: 1.85;
	color: #292929cc;
}

body.bejoyi-live-single .bejoyi-lp-acc-inner ul {
	margin: 0 0 14px;
	padding-left: 20px;
}

body.bejoyi-live-single .bejoyi-lp-acc-inner li {
	margin-bottom: 6px;
}

body.bejoyi-live-single .bejoyi-lp-acc-inner a {
	color: var(--bejoyi-red);
	font-weight: 600;
	text-decoration: underline;
}

body.bejoyi-live-single .bejoyi-lp-washcare p {
	margin: 0 0 4px;
}

/* ---------------------------------------------------------------------------
 * Assurance row + social links.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-assurance {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 28px;
	margin-top: 30px;
	padding-top: 24px;
	border-top: 1px solid #29292920;
	font-family: var(--bejoyi-sans);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.8px;
	color: #29292999;
}

body.bejoyi-live-single .bejoyi-lp-assurance-item {
	display: inline-flex;
	align-items: center;
	gap: 9px;
}

body.bejoyi-live-single .bejoyi-lp-assurance-item .bejoyi-lp-ico {
	color: var(--bejoyi-red);
}

body.bejoyi-live-single .bejoyi-lp-social {
	display: inline-flex;
	gap: 18px;
	margin-left: auto;
}

body.bejoyi-live-single .bejoyi-lp-social a {
	color: #29292999;
	text-decoration: none;
	font-size: 13px;
}

body.bejoyi-live-single .bejoyi-lp-social a:hover {
	color: var(--bejoyi-red);
}

/*
 * Breathing room below the assurance row, which is the last thing in the
 * summary column. Scoped with :has() so it only applies in the side-by-side
 * layout - when the gallery sits above the summary the column already ends at
 * the section gap and needs no extra padding.
 */
@media (min-width: 1000px) {
	body.bejoyi-live-single .product-entry-wrapper:has(.woocommerce-product-gallery:not([data-gallery="top"], [data-gallery="columns-top"])) .entry-summary {
		padding-bottom: 30px;
	}
}

/* ---------------------------------------------------------------------------
 * Shared section scaffolding. Sections that live renders full-bleed break out
 * of Blocksy's constrained container.
 * ------------------------------------------------------------------------ */

/*
 * Full-bleed break-out. --bejoyi-vw is set from documentElement.clientWidth by
 * the script, which excludes the scrollbar; plain 100vw includes it and would
 * leave the page a few pixels horizontally scrollable.
 */
body.bejoyi-live-single .bejoyi-lp-section {
	width: var(--bejoyi-vw, 100vw);
	margin-left: calc(50% - var(--bejoyi-vw, 100vw) / 2);
	margin-right: calc(50% - var(--bejoyi-vw, 100vw) / 2);
	padding: 70px 20px;
	box-sizing: border-box;
}

body.bejoyi-live-single .bejoyi-lp-inner {
	max-width: 1290px;
	margin: 0 auto;
	width: 100%;
}

body.bejoyi-live-single .bejoyi-lp-rule {
	display: block;
	width: 70px;
	height: 1px;
	margin: 14px auto 18px;
	background: #ffffff80;
}

body.bejoyi-live-single .bejoyi-lp-rule.is-dark {
	background: #29292930;
}

body.bejoyi-live-single .bejoyi-lp-eyebrow {
	display: block;
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #fff;
	text-align: center;
}

/* ---------------------------------------------------------------------------
 * Explore By Category - #292929 with the cloth texture, fixed on desktop,
 * heading Raleway Medium 27px/600 ls1.5px #FFF8EE.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-categories {
	position: relative;
	background-color: var(--bejoyi-dark);
	background-image: var(--bejoyi-lp-texture);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 50px 20px;
}

@media (min-width: 1025px) {
	body.bejoyi-live-single .bejoyi-lp-categories {
		background-attachment: fixed;
	}
}

body.bejoyi-live-single .bejoyi-lp-categories::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--bejoyi-dark);
	opacity: 0.84;
}

body.bejoyi-live-single .bejoyi-lp-categories > .bejoyi-lp-inner {
	position: relative;
	z-index: 1;
}

body.bejoyi-live-single .bejoyi-lp-categories-title {
	font-family: var(--bejoyi-sans);
	font-size: 27px;
	font-weight: 600;
	letter-spacing: 1.5px;
	color: var(--bejoyi-cream);
	text-align: center;
	margin: 0;
}

body.bejoyi-live-single .bejoyi-lp-cat-viewport {
	position: relative;
	overflow: hidden;
	margin-top: 26px;
}

body.bejoyi-live-single .bejoyi-lp-cat-track {
	display: flex;
	gap: 12px;
	transition: transform 0.5s ease;
}

body.bejoyi-live-single .bejoyi-lp-cat-card {
	flex: 0 0 calc((100% - 36px) / 4);
	min-width: 0;
}

body.bejoyi-live-single .bejoyi-lp-cat-link {
	position: relative;
	display: block;
	height: 420px;
	border-radius: 4px;
	overflow: hidden;
	text-decoration: none;
}

body.bejoyi-live-single .bejoyi-lp-cat-media {
	position: absolute;
	inset: 0;
	background-position: center center;
	background-size: cover;
	transition: transform 0.6s ease;
}

body.bejoyi-live-single .bejoyi-lp-cat-link:hover .bejoyi-lp-cat-media {
	transform: scale(1.06);
}

body.bejoyi-live-single .bejoyi-lp-cat-link::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, #00000099 0%, #0000001a 55%, transparent 100%);
}

body.bejoyi-live-single .bejoyi-lp-cat-body {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	padding: 24px 22px;
	text-align: left;
}

body.bejoyi-live-single .bejoyi-lp-cat-name {
	display: block;
	font-family: var(--bejoyi-sans);
	font-size: 30px;
	font-weight: 500;
	line-height: 34px;
	letter-spacing: 1px;
	color: #fff;
}

body.bejoyi-live-single .bejoyi-lp-cat-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 8px;
	padding-bottom: 10px;
	font-family: var(--bejoyi-sans);
	font-size: 15px;
	letter-spacing: 1px;
	color: #fff;
}

body.bejoyi-live-single .bejoyi-lp-cat-cta .bejoyi-lp-ico {
	width: 15px;
	height: 15px;
}

body.bejoyi-live-single .bejoyi-lp-cat-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: #ffffffd9;
	cursor: pointer;
}

body.bejoyi-live-single .bejoyi-lp-cat-nav.is-prev {
	left: 6px;
}

body.bejoyi-live-single .bejoyi-lp-cat-nav.is-next {
	right: 6px;
}

body.bejoyi-live-single .bejoyi-lp-cat-nav::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 9px;
	border-right: 1.5px solid var(--bejoyi-dark);
	border-bottom: 1.5px solid var(--bejoyi-dark);
}

body.bejoyi-live-single .bejoyi-lp-cat-nav.is-next::before {
	transform: translate(-60%, -50%) rotate(-45deg);
}

body.bejoyi-live-single .bejoyi-lp-cat-nav.is-prev::before {
	transform: translate(-40%, -50%) rotate(135deg);
}

/* ---------------------------------------------------------------------------
 * Upsell eyebrow ("You May Also Like").
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-upsell-eyebrow {
	text-align: center;
	margin-top: 60px;
}

body.bejoyi-live-single .bejoyi-lp-upsell-eyebrow h4 {
	font-family: var(--bejoyi-sans);
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #29292999;
	margin: 0;
}

/* ---------------------------------------------------------------------------
 * Upsell products section visibility on mobile & tablet.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single section.up-sells.ct-hidden-sm,
body.bejoyi-live-single section.up-sells.ct-hidden-md,
body.single-product section.up-sells.ct-hidden-sm,
body.single-product section.up-sells.ct-hidden-md {
	display: block !important;
}

body.bejoyi-live-single section.up-sells {
	margin-top: 30px;
}

@media (max-width: 689.98px) {
	body.bejoyi-live-single section.up-sells [data-products] {
		--shop-columns: repeat(2, minmax(0, 1fr));
		grid-column-gap: 12px;
		grid-row-gap: 20px;
	}
}

@media (max-width: 480px) {
	body.bejoyi-live-single section.up-sells [data-products] {
		grid-column-gap: 10px;
		grid-row-gap: 16px;
	}
}

/* ---------------------------------------------------------------------------
 * Essence band.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-essence {
	background: var(--bejoyi-dark);
	text-align: center;
	padding: 80px 20px;
}

body.bejoyi-live-single .bejoyi-lp-essence .bejoyi-lp-eyebrow {
	font-size: 13px;
}

body.bejoyi-live-single .bejoyi-lp-essence-title {
	font-family: var(--bejoyi-sans);
	font-size: 45px;
	font-weight: 600;
	line-height: 1.2em;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #fff;
	margin: 0 auto;
	max-width: 640px;
}

body.bejoyi-live-single .bejoyi-lp-essence-copy {
	max-width: 720px;
	margin: 6px auto 0;
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	line-height: 1.9;
	letter-spacing: 0.5px;
	color: var(--bejoyi-cream);
}

/* ---------------------------------------------------------------------------
 * Recently viewed.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-recent {
	padding: 60px 20px;
	text-align: center;
}

body.bejoyi-live-single .bejoyi-lp-recent-title {
	font-family: var(--bejoyi-sans);
	font-size: 30px;
	font-weight: 500;
	letter-spacing: 1px;
	color: var(--bejoyi-dark);
	margin: 0 0 24px;
}

body.bejoyi-live-single .bejoyi-lp-recent-empty {
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	color: #29292999;
	margin: 0;
}

body.bejoyi-live-single .bejoyi-lp-recent-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

body.bejoyi-live-single .bejoyi-lp-recent-card {
	text-decoration: none;
	color: var(--bejoyi-dark);
}

body.bejoyi-live-single .bejoyi-lp-recent-card img {
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 12px;
}

body.bejoyi-live-single .bejoyi-lp-recent-name {
	display: block;
	font-family: var(--bejoyi-sans);
	font-size: 14px;
	line-height: 1.5;
}

body.bejoyi-live-single .bejoyi-lp-recent-price {
	display: block;
	margin-top: 5px;
	font-family: var(--bejoyi-serif);
	font-size: 16px;
	color: var(--bejoyi-red);
}

/* ---------------------------------------------------------------------------
 * Where Classic Meets Modern - cross-fading model slideshow behind the copy.
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-classic {
	position: relative;
	overflow: hidden;
	padding: 110px 20px;
	text-align: center;
}

body.bejoyi-live-single .bejoyi-lp-classic-bg {
	position: absolute;
	inset: 0;
}

body.bejoyi-live-single .bejoyi-lp-classic-slide {
	position: absolute;
	inset: 0;
	background-position: center center;
	background-size: cover;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}

body.bejoyi-live-single .bejoyi-lp-classic-slide.is-active {
	opacity: 1;
}

body.bejoyi-live-single .bejoyi-lp-classic-bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #29292999;
}

body.bejoyi-live-single .bejoyi-lp-classic-body {
	position: relative;
	z-index: 1;
}

body.bejoyi-live-single .bejoyi-lp-classic-title {
	font-family: var(--bejoyi-sans);
	font-size: 42px;
	font-weight: 600;
	letter-spacing: 2px;
	color: #fff;
	margin: 12px 0 0;
}

body.bejoyi-live-single .bejoyi-lp-classic-copy {
	max-width: 720px;
	margin: 0 auto 26px;
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	line-height: 1.9;
	letter-spacing: 0.5px;
	color: var(--bejoyi-cream);
}

body.bejoyi-live-single .bejoyi-lp-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 15px 34px;
	border: 1px solid #fff;
	border-radius: 4px;
	font-family: var(--bejoyi-sans);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #fff;
	text-decoration: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

body.bejoyi-live-single .bejoyi-lp-btn:hover {
	background: #fff;
	color: var(--bejoyi-dark);
}

body.bejoyi-live-single .bejoyi-lp-btn .bejoyi-lp-ico {
	width: 15px;
	height: 15px;
}

/* ---------------------------------------------------------------------------
 * Feature cards - #8A1818, 50px radius, lift on hover (live element b4370ba).
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-features {
	padding: 60px 20px;
}

body.bejoyi-live-single .bejoyi-lp-features-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

body.bejoyi-live-single .bejoyi-lp-feature {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 269px;
	padding: 40px 24px;
	border-radius: 50px;
	background: var(--bejoyi-red);
	text-align: center;
}

@media (min-width: 600px) {
	body.bejoyi-live-single .bejoyi-lp-feature {
		transition: transform 0.5s ease, box-shadow 0.5s ease;
	}

	body.bejoyi-live-single .bejoyi-lp-feature:hover {
		transform: translateY(-20px) scale(1.03);
		box-shadow: 5px 5px 10px #aaa;
	}
}

body.bejoyi-live-single .bejoyi-lp-feature .bejoyi-lp-ico {
	width: 40px;
	height: 40px;
	color: #fff;
}

body.bejoyi-live-single .bejoyi-lp-feature h4 {
	font-family: var(--bejoyi-sans-reg);
	font-size: 39px;
	font-weight: 600;
	letter-spacing: 3px;
	color: #fff;
	margin: 0;
}

body.bejoyi-live-single .bejoyi-lp-feature p {
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 1px;
	color: var(--bejoyi-cream);
	margin: 0;
}

/* ---------------------------------------------------------------------------
 * FAQs - Raleway Regular 16px/500 ls1px headers on a 1px #AAA rule,
 * Roxborough Regular 15px body (live element dfbb99f).
 * ------------------------------------------------------------------------ */

body.bejoyi-live-single .bejoyi-lp-faq {
	padding: 70px 20px 90px;
}

body.bejoyi-live-single .bejoyi-lp-faq-title {
	font-family: var(--bejoyi-sans);
	font-size: 36px;
	font-weight: 600;
	letter-spacing: 2px;
	color: var(--bejoyi-dark);
	text-align: center;
	margin: 0;
}

body.bejoyi-live-single .bejoyi-lp-faq-sub {
	font-family: var(--bejoyi-sans-reg);
	font-size: 15px;
	letter-spacing: 0.5px;
	color: #29292999;
	text-align: center;
	margin: 10px 0 34px;
}

body.bejoyi-live-single .bejoyi-lp-accordion.is-faq {
	max-width: 980px;
	margin: 0 auto;
}

body.bejoyi-live-single .bejoyi-lp-accordion.is-faq .bejoyi-lp-acc-head {
	padding: 26px 0;
	background: transparent;
	border-bottom: 1px solid #aaa;
	font-family: var(--bejoyi-sans-reg);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 1px;
	color: var(--bejoyi-dark);
}

body.bejoyi-live-single .bejoyi-lp-accordion.is-faq .bejoyi-lp-acc-head:hover {
	color: var(--bejoyi-red);
}

body.bejoyi-live-single .bejoyi-lp-accordion.is-faq .bejoyi-lp-acc-inner {
	padding: 24px 0 30px;
	font-family: var(--bejoyi-serif);
	font-size: 15px;
	letter-spacing: 1px;
	color: var(--bejoyi-dark);
	text-align: left;
}

/* ---------------------------------------------------------------------------
 * Responsive - live's own tablet/mobile steps.
 * ------------------------------------------------------------------------ */

@media (max-width: 1200px) {
	body.bejoyi-live-single .entry-summary .product_title {
		font-size: 45px;
		line-height: 1.2;
	}

	body.bejoyi-live-single .bejoyi-lp-cat-card {
		flex: 0 0 calc((100% - 24px) / 3);
	}

	body.bejoyi-live-single .bejoyi-lp-feature h4 {
		font-size: 28px;
	}
}

@media (max-width: 900px) {
	body.bejoyi-live-single .bejoyi-lp-recent-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.bejoyi-live-single .bejoyi-lp-features-grid {
		grid-template-columns: 1fr;
	}

	body.bejoyi-live-single .bejoyi-lp-feature {
		border-radius: 20px;
		min-height: auto;
		padding: 50px 24px;
	}
}

@media (max-width: 768px) {
	body.bejoyi-live-single .entry-summary .product_title {
		font-size: 22px;
	}
}

@media (max-width: 700px) {
	body.bejoyi-live-single .entry-summary .product_title {
		font-size: 22px;
		line-height: 1.25;
		margin-bottom: 18px;
	}

	/* Live's mobile variant is much smaller than its desktop one, and uses
	   Raleway rather than Roxborough for the amount. Measured on live at
	   500px: "Rs." 18px/600 Roxborough #8A1818, amount 18px Raleway #000,
	   struck original 14.4px. */
	body.bejoyi-live-single .bejoyi-lp-price-label {
		font-family: var(--bejoyi-serif);
		font-size: 18px;
	}

	body.bejoyi-live-single .bejoyi-lp-price-value,
	body.bejoyi-live-single .bejoyi-lp-price-value .woocommerce-Price-amount {
		font-family: var(--bejoyi-sans);
		font-size: 18px;
		color: #000;
	}

	body.bejoyi-live-single .bejoyi-lp-price-row {
		gap: 10px;
		align-items: baseline;
		flex-wrap: wrap;
	}

	body.bejoyi-live-single .bejoyi-lp-price-value del {
		display: inline;
		margin-left: 8px;
	}

	body.bejoyi-live-single .bejoyi-lp-price-value del,
	body.bejoyi-live-single .bejoyi-lp-price-value del .woocommerce-Price-amount {
		font-family: var(--bejoyi-sans);
		font-size: 14.4px;
		font-weight: 400;
		color: #29292999;
	}

	/* Quantity box: live is 130px wide with a dark numeral. */
	body.bejoyi-live-single form.cart .quantity:not(.hidden) input.qty {
		width: 60px;
		color: var(--bejoyi-dark);
		font-size: 15px;
	}

	body.bejoyi-live-single form.cart .quantity:not(.hidden) {
		width: 130px;
	}

	/* Wishlist as a bordered button, as live shows it on mobile. */
	body.bejoyi-live-single .yith-add-to-wishlist-button-block,
	body.bejoyi-live-single .yith-wcwl-add-to-wishlist {
		display: block;
		width: 100%;
		margin: 14px 0 0;
	}

	body.bejoyi-live-single .yith-add-to-wishlist-button-block a,
	body.bejoyi-live-single .yith-wcwl-add-to-wishlist a {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		width: 100%;
		min-height: 46px;
		padding: 11px 18px;
		border: 1px solid var(--bejoyi-red);
		border-radius: 5px;
		background: transparent;
		font-family: var(--bejoyi-sans);
		font-size: 14px;
		font-weight: 500;
		letter-spacing: 0.4px;
		color: var(--bejoyi-dark);
		text-decoration: none;
	}

	/* Keep the heart from rendering at its default oversized, solid black. */
	body.bejoyi-live-single .yith-add-to-wishlist-button-block a svg,
	body.bejoyi-live-single .yith-wcwl-add-to-wishlist a svg {
		width: 16px;
		height: 16px;
		flex: 0 0 auto;
		fill: none;
		stroke: var(--bejoyi-red);
	}

	body.bejoyi-live-single .yith-add-to-wishlist-button-block a i,
	body.bejoyi-live-single .yith-wcwl-add-to-wishlist a i {
		font-size: 16px;
		line-height: 1;
		color: var(--bejoyi-red);
	}

	body.bejoyi-live-single .bejoyi-lp-stock {
		font-size: 15px;
	}

	body.bejoyi-live-single .ct-breadcrumbs {
		padding: 12px 20px;
		font-size: 11px;
	}

	body.bejoyi-live-single form.cart .ct-cart-actions {
		gap: 10px;
	}

	body.bejoyi-live-single form.cart .single_add_to_cart_button,
	body.bejoyi-live-single form.cart .buy-now-button {
		flex: 1 1 100%;
	}

	body.bejoyi-live-single .bejoyi-lp-cat-card {
		flex: 0 0 100%;
	}

	body.bejoyi-live-single .bejoyi-lp-cat-link {
		height: 340px;
	}

	body.bejoyi-live-single .bejoyi-lp-categories-title {
		font-size: 20px;
	}

	body.bejoyi-live-single .bejoyi-lp-essence-title {
		font-size: 30px;
	}

	body.bejoyi-live-single .bejoyi-lp-classic-title {
		font-size: 26px;
	}

	body.bejoyi-live-single .bejoyi-lp-feature h4 {
		font-size: 20px;
	}

	body.bejoyi-live-single .bejoyi-lp-feature p {
		font-size: 11px;
	}

	body.bejoyi-live-single .bejoyi-lp-faq-title {
		font-size: 26px;
	}

	body.bejoyi-live-single .bejoyi-lp-accordion.is-faq .bejoyi-lp-acc-head {
		font-size: 14px;
		padding: 20px 0;
	}

	body.bejoyi-live-single .bejoyi-lp-accordion.is-faq .bejoyi-lp-acc-inner {
		font-size: 13px;
	}

	body.bejoyi-live-single .bejoyi-lp-social {
		margin-left: 0;
		width: 100%;
	}
}
