/**
 * DeL Quick View Modal Redesign - Frontend styles.
 */
.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal,
.quick-view-modal.del-qv-editorial-modal {d
	--del-qv-bg: #ffffff;
	--del-qv-surface: #ffffff;
	--del-qv-surface-soft: #fafaf7;
	--del-qv-surface-tint: #fffbf5;
	--del-qv-text: #0f172a;
	--del-qv-text-muted: #475569;
	--del-qv-text-subtle: #94a3b8;
	--del-qv-border: #e6e8ec;
	--del-qv-border-strong: #cbd5e1;
	--del-qv-accent: #e86b17;
	--del-qv-accent-dark: #b9530c;
	--del-qv-radius: 18px;
	width: min(760px, calc(100vw - 32px)) !important;
	max-width: min(760px, calc(100vw - 32px)) !important;
	max-height: min(90vh, 860px) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
	position: relative !important;
}

.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal *,
.quick-view-modal.del-qv-editorial-modal * { box-sizing: border-box; }

.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal .rtsb-modal-content,
.quick-view-modal.del-qv-editorial-modal .rtsb-modal-content,
.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal .rtsb-modal-body,
.quick-view-modal.del-qv-editorial-modal .rtsb-modal-body {
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
}

.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal .rtsb-modal-header,
.quick-view-modal.del-qv-editorial-modal .rtsb-modal-header {
	position: absolute !important;
	top: 16px !important;
	right: 16px !important;
	z-index: 30 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal .rtsb-modal-close,
.quick-view-modal.del-qv-editorial-modal .rtsb-modal-close {
	width: 36px !important;
	height: 36px !important;
	border-radius: 50% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--del-qv-surface) !important;
	border: 1px solid var(--del-qv-border) !important;
	box-shadow: 0 1px 2px rgba(15,23,42,.05) !important;
	color: var(--del-qv-text-muted) !important;
	cursor: pointer !important;
	padding: 0 !important;
}

.del-qv-editorial-modal .rtsb-modal-close i { display: none !important; }
.del-qv-editorial-modal .rtsb-modal-close .close-x { position: relative; width: 14px; height: 14px; display: inline-block; }
.del-qv-editorial-modal .rtsb-modal-close .close-x::before,
.del-qv-editorial-modal .rtsb-modal-close .close-x::after {
	content: '';
	position: absolute;
	left: 50%; top: 50%;
	width: 14px; height: 1.5px;
	background: currentColor;
	border-radius: 1px;
}
.del-qv-editorial-modal .rtsb-modal-close .close-x::before { transform: translate(-50%, -50%) rotate(45deg); }
.del-qv-editorial-modal .rtsb-modal-close .close-x::after { transform: translate(-50%, -50%) rotate(-45deg); }

.del-qv-editorial-modal .del-qv-product-wrapper {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.del-qv-editorial-modal .qv-summary {
	padding: 44px 46px 38px !important;
	background: var(--del-qv-surface) !important;
	border: 1px solid var(--del-qv-border) !important;
	border-radius: var(--del-qv-radius) !important;
	box-shadow: 0 1px 2px rgba(15,23,42,.05), 0 24px 60px rgba(15,23,42,.16) !important;
	max-height: min(90vh, 860px) !important;
	overflow-y: auto !important;
}

.del-qv-editorial-modal .summary-content {
	display: flex !important;
	flex-direction: column !important;
	gap: 22px !important;
	min-width: 0;
}

.del-qv-editorial-modal .del-qv-eyebrow {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	color: var(--del-qv-text-muted) !important;
	letter-spacing: .12em !important;
	text-transform: uppercase !important;
	margin: 0 !important;
}
.del-qv-editorial-modal .del-qv-eyebrow-dot { width: 5px; height: 5px; background: var(--del-qv-accent); border-radius: 50%; flex: 0 0 auto; }

.del-qv-editorial-modal .product_title {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--del-qv-text) !important;
	font-size: clamp(26px, 2.8vw, 36px) !important;
	line-height: 1.15 !important;
	letter-spacing: -.02em !important;
	font-weight: 700 !important;
}

.del-qv-editorial-modal .del-qv-tagline {
	font-size: 16px !important;
	line-height: 1.55 !important;
	color: var(--del-qv-text-muted) !important;
	margin: 0 !important;
}

.del-qv-editorial-modal .del-qv-price-row {
	display: flex !important;
	align-items: baseline !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
	padding: 18px 0 !important;
	border-top: 1px solid var(--del-qv-border) !important;
	border-bottom: 1px solid var(--del-qv-border) !important;
}

.del-qv-editorial-modal .price {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--del-qv-text) !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	letter-spacing: -.015em !important;
	display: inline-flex !important;
	align-items: baseline !important;
	gap: 8px !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.del-qv-editorial-modal .price .sale-price,
.del-qv-editorial-modal .price .del-qv-sale-price,
.del-qv-editorial-modal .price > span:has(del):has(ins) {
	display: inline-flex !important;
	align-items: baseline !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
}

.del-qv-editorial-modal .price del {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--del-qv-text-subtle) !important;
	text-decoration-thickness: 1.5px !important;
	opacity: .85 !important;
}

.del-qv-editorial-modal .price del .woocommerce-Price-currencySymbol,
.del-qv-editorial-modal .price del .currency { display: none !important; }

.del-qv-editorial-modal .price ins {
	text-decoration: none !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	color: var(--del-qv-text) !important;
}

.del-qv-editorial-modal .price .woocommerce-Price-currencySymbol,
.del-qv-editorial-modal .price .currency {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--del-qv-text-muted) !important;
	white-space: pre !important;
}

.del-qv-editorial-modal .price-suffix,
.del-qv-editorial-modal .woocommerce-price-suffix {
	color: var(--del-qv-text-subtle) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}

.del-qv-editorial-modal .del-qv-facts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 16px;
}
.del-qv-editorial-modal .del-qv-fact { display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: start; min-width: 0; }
.del-qv-editorial-modal .del-qv-fact-icon { width: 34px; height: 34px; border-radius: 9px; background: var(--del-qv-surface-soft); border: 1px solid var(--del-qv-border); display: flex; align-items: center; justify-content: center; color: var(--del-qv-text-muted); }
.del-qv-editorial-modal .del-qv-fact-icon svg { width: 16px; height: 16px; }
.del-qv-editorial-modal .del-qv-fact-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.del-qv-editorial-modal .del-qv-fact-label { font-size: 11px; font-weight: 700; color: var(--del-qv-text-subtle); letter-spacing: .08em; text-transform: uppercase; }
.del-qv-editorial-modal .del-qv-fact-value { font-size: 13.5px; font-weight: 600; color: var(--del-qv-text); line-height: 1.4; }

.del-qv-editorial-modal .del-qv-section { display: flex; flex-direction: column; gap: 12px; }
.del-qv-editorial-modal .del-qv-section-label { font-size: 11px; font-weight: 700; color: var(--del-qv-text-muted); letter-spacing: .08em; text-transform: uppercase; }
.del-qv-editorial-modal .del-qv-included-list,
.del-qv-editorial-modal .del-qv-highlights { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 10px; }
.del-qv-editorial-modal .del-qv-highlights li { position: relative; padding-left: 22px !important; font-size: 14.5px; color: var(--del-qv-text-muted); line-height: 1.55; margin: 0 !important; }
.del-qv-editorial-modal .del-qv-highlights li::before { content: ''; position: absolute; left: 0; top: 10px; width: 12px; height: 2px; background: var(--del-qv-accent); border-radius: 2px; }
.del-qv-editorial-modal .del-qv-highlights li strong,
.del-qv-editorial-modal .del-qv-highlights li b { color: var(--del-qv-text); font-weight: 700; }
.del-qv-editorial-modal .del-qv-included-list li { font-size: 14.5px; color: var(--del-qv-text-muted); line-height: 1.55; margin: 0 !important; }

.del-qv-editorial-modal .del-qv-prereq {
	padding: 14px 16px;
	background: var(--del-qv-surface-tint);
	border-left: 3px solid var(--del-qv-accent);
	border-radius: 0 10px 10px 0;
	font-size: 13.5px;
	color: var(--del-qv-text-muted);
	line-height: 1.55;
}
.del-qv-editorial-modal .del-qv-prereq-label { display: block; font-size: 11px; font-weight: 700; color: var(--del-qv-accent-dark); letter-spacing: .06em; text-transform: uppercase; margin-bottom: 4px; }


.del-qv-editorial-modal .del-qv-bundle-summary {
	padding: 16px 16px 14px !important;
	background: #f8fafc !important;
	border: 1px solid var(--del-qv-border) !important;
	border-radius: 12px !important;
	gap: 12px !important;
}

.del-qv-editorial-modal .del-qv-bundle-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

.del-qv-editorial-modal .del-qv-bundle-item {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	gap: 14px !important;
	align-items: baseline !important;
	padding: 0 0 10px !important;
	margin: 0 !important;
	border-bottom: 1px solid var(--del-qv-border) !important;
}

.del-qv-editorial-modal .del-qv-bundle-item:last-child {
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

.del-qv-editorial-modal .del-qv-bundle-name {
	min-width: 0 !important;
	font-size: 13.5px !important;
	font-weight: 650 !important;
	line-height: 1.45 !important;
	color: var(--del-qv-text) !important;
}

.del-qv-editorial-modal .del-qv-bundle-price {
	white-space: nowrap !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: var(--del-qv-text) !important;
	display: inline-flex !important;
	align-items: baseline !important;
	gap: 8px !important;
}

.del-qv-editorial-modal .del-qv-bundle-price del {
	color: var(--del-qv-text-subtle) !important;
	font-weight: 500 !important;
	text-decoration-thickness: 1px !important;
}

.del-qv-editorial-modal .del-qv-bundle-price ins {
	color: var(--del-qv-accent-dark) !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

.del-qv-editorial-modal .del-qv-bundle-price .woocommerce-Price-currencySymbol {
	white-space: pre !important;
}

.del-qv-editorial-modal .del-qv-cta-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 4px;
	align-items: start;
}

.del-qv-editorial-modal .del-qv-cart-form,
.del-qv-editorial-modal form.cart.del-qv-cart-form {
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
}

.del-qv-editorial-modal .del-qv-hidden-bundle-ui,
.del-qv-editorial-modal .del-qv-cart-form .bundled_products,
.del-qv-editorial-modal .del-qv-cart-form .bundled_product,
.del-qv-editorial-modal .del-qv-cart-form .bundled_product_summary,
.del-qv-editorial-modal .del-qv-cart-form .bundle_price,
.del-qv-editorial-modal .del-qv-cart-form .bundle_error,
.del-qv-editorial-modal .del-qv-cart-form .bundle_availability,
.del-qv-editorial-modal .del-qv-cart-form .composite_data,
.del-qv-editorial-modal .del-qv-cart-form .component,
.del-qv-editorial-modal .del-qv-cart-form .component_selections {
	display: none !important;
}

.del-qv-editorial-modal .del-qv-cart-form .bundle_wrap,
.del-qv-editorial-modal .del-qv-cart-form .bundle_button {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.del-qv-editorial-modal .del-qv-cart-form .quantity,
.del-qv-editorial-modal .del-qv-cart-form .quantity.hidden,
.del-qv-editorial-modal .del-qv-cart-form .ct-increase,
.del-qv-editorial-modal .del-qv-cart-form .ct-decrease { display: none !important; }

.del-qv-editorial-modal .cta-button,
.del-qv-editorial-modal .del-qv-cart-form .single_add_to_cart_button {
	width: 100% !important;
	min-height: 52px !important;
	border-radius: 10px !important;
	padding: 14px 20px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: -.003em !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	cursor: pointer !important;
	border: 1px solid transparent !important;
	font-family: inherit !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
}
.del-qv-editorial-modal .cta-button--secondary { background: var(--del-qv-surface) !important; color: var(--del-qv-text) !important; border-color: var(--del-qv-border-strong) !important; }
.del-qv-editorial-modal .cta-button--secondary:hover { background: var(--del-qv-surface-soft) !important; border-color: var(--del-qv-text-muted) !important; }
.del-qv-editorial-modal .del-qv-cart-form .single_add_to_cart_button,
.del-qv-editorial-modal .cta-button--primary { background: var(--del-qv-text) !important; color: #fff !important; border-color: var(--del-qv-text) !important; }
.del-qv-editorial-modal .del-qv-cart-form .single_add_to_cart_button:hover,
.del-qv-editorial-modal .cta-button--primary:hover { background: var(--del-qv-accent) !important; border-color: var(--del-qv-accent) !important; color: #fff !important; }

.del-qv-editorial-modal .del-qv-microcopy { margin: 12px 0 0 !important; font-size: 12px; color: var(--del-qv-text-subtle); line-height: 1.5; display: flex; align-items: flex-start; gap: 8px; padding: 0 !important; }
.del-qv-editorial-modal .del-qv-microcopy svg { width: 14px; height: 14px; margin-top: 2px; flex-shrink: 0; }

@media (max-width: 820px) {
	.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal,
	.quick-view-modal.del-qv-editorial-modal { width: min(94vw, 560px) !important; }
	.del-qv-editorial-modal .qv-summary { padding: 30px 24px 26px !important; max-height: 92vh !important; }
	.del-qv-editorial-modal .del-qv-facts { grid-template-columns: 1fr; gap: 12px; }
	.del-qv-editorial-modal .del-qv-bundle-item { grid-template-columns: 1fr !important; gap: 4px !important; }
	.del-qv-editorial-modal .del-qv-bundle-price { white-space: normal !important; }
	.del-qv-editorial-modal .del-qv-cta-row { grid-template-columns: 1fr; }
}

/* v1.1.6 quick-view-only cart-state handling for sold-individually courses. */
.del-qv-editorial-modal .del-qv-product-in-cart .quantity,
.del-qv-editorial-modal .del-qv-product-in-cart .quantity.hidden,
.del-qv-editorial-modal .del-qv-product-in-cart .ct-increase,
.del-qv-editorial-modal .del-qv-product-in-cart .ct-decrease {
	display: none !important;
}

.del-qv-editorial-modal .del-qv-view-cart-button {
	background: var(--del-qv-accent, #e86b17) !important;
	border-color: var(--del-qv-accent, #e86b17) !important;
	color: #fff !important;
	text-align: center !important;
	text-decoration: none !important;
}

.del-qv-editorial-modal .del-qv-view-cart-button:hover {
	background: var(--del-qv-accent-dark, #b9530c) !important;
	border-color: var(--del-qv-accent-dark, #b9530c) !important;
	color: #fff !important;
}

/* Centre the transformed quick-view modal in the viewport */
/* Centre horizontally only */
.rtsb-ui-modal .quick-view-modal.del-qv-editorial-modal,
.quick-view-modal.del-qv-editorial-modal {
	position: fixed !important;
	left: 50% !important;
	right: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	transform: translateX(-50%) !important;
}
