/* Modular Product Page Styles (scoped) */
.cmi-product-page {
	--cmi-brand: var(--bs-primary, #0e8bc8);
	--cmi-brand-contrast: #ffffff;
	--cmi-accent: #3AAAE1;
	--cmi-text: #212529;
	--cmi-muted: #6c757d;
}

/* Layout: force a robust two-column grid that won't collapse if theme grid conflicts */
.cmi-product-page > .row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
	gap: 24px;
	align-items: start;
}
.cmi-product-page > .row > [class*="col-"] {
	width: auto !important;
	max-width: 100% !important;
	flex: 0 0 auto !important;
	min-width: 0;
}

/* Stack on smaller screens */
@media (max-width: 991.98px) {
	.cmi-product-page > .row {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

/* Ensure cards expand */
.cmi-product-page .card { width: 100%; border-radius: 8px; }
.cmi-product-page .ij-purchase-option,
.cmi-product-page .ij-purchasing-options { width: 100%; min-width: 0; }
.cmi-product-page #rep-desc-card { margin-bottom: 16px; }

/* Tabs */
.cmi-product-page #myTab .nav-item i {
	margin: 0 6px 0 0;
}
.cmi-product-page #myTab .nav-item .nav-link {
	color: var(--cmi-brand-contrast);
	border-radius: 0;
	padding: 0.65rem 1rem;
	font-weight: 500;
}
.cmi-product-page #myTab { margin-bottom: 12px; gap: 6px; }
.cmi-product-page #myTab .nav-item:nth-child(1) .nav-link { background-color: var(--bs-indigo, #6610f2); }
.cmi-product-page #myTab .nav-item:nth-child(2) .nav-link { background-color: var(--cmi-brand); }
.cmi-product-page #myTab .nav-item:nth-child(3) .nav-link { background-color: var(--bs-pink, #d63384); }
.cmi-product-page #myTab .nav-item:nth-child(4) .nav-link { background-color: var(--bs-green, #198754); }

/* Card headers */
.cmi-product-page .purchase-summary .card-header,
.cmi-product-page .order-summary .card .card-header,
.cmi-product-page .payment-head-sec {
	background-color: var(--cmi-brand);
	border: 0;
}
.cmi-product-page .card .card-header h5,
.cmi-product-page .purchase-summary .card-header h5,
.cmi-product-page .payment-head-sec h5 {
	color: var(--cmi-brand-contrast);
	line-height: 1.6;
	margin: 0;
}

/* Purchase options */
.cmi-product-page .purchase-summary .currency-sec .custom-control-label,
.cmi-product-page .purchase-summary .license-sec .custom-control-label,
.cmi-product-page .purchase-summary .license-sec p,
.cmi-product-page .purchase-summary .what-you-get p,
.cmi-product-page .purchase-summary .what-you-get ul li,
.cmi-product-page .pc-currencySymbol {
	color: var(--cmi-brand-contrast);
	font-size: 14px;
}

.cmi-product-page .purchase-summary .license-sec {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0.25rem 0.35rem;
	transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease;
}
.cmi-product-page .purchase-summary .license-sec > [class*="col-"] { min-width: 0; }
.cmi-product-page .purchase-summary .license-sec:hover {
	background-color: var(--cmi-accent);
	transform: scale(1.015);
	cursor: pointer;
}
.cmi-product-page .purchase-summary .license-sec-active,
.cmi-product-page .purchase-summary .license-sec-active:hover {
	background-color: var(--cmi-accent);
}
.cmi-product-page .purchase-summary .pc-currencySymbol { color: var(--cmi-brand-contrast); }

/* What you get list */
.cmi-product-page .purchase-summary .what-you-get ul {
	list-style: none;
	padding: 0;
	margin: 0.5rem 0 0 0;
}

/* Details head meta */
.cmi-product-page .ij-report-meta {
	color: var(--cmi-text);
	margin-bottom: .25rem;
	font-size: 14px;
}
.cmi-product-page .ij-report-meta strong { color: var(--cmi-text); }

/* Related items */
.cmi-product-page .related-report-container .related-reports-item {
	gap: 10px;
	padding: 10px 0;
	border-bottom: 1px dashed rgba(0,0,0,0.08);
}
.cmi-product-page .related-report-container .related-reports-item:last-child {
	border-bottom: 0;
}
.cmi-product-page .related-report-container .report-title a {
	color: var(--cmi-text);
	text-decoration: none;
}
.cmi-product-page .related-report-container .report-title a:hover {
	text-decoration: underline;
}

/* FAQ */
.cmi-product-page .container-accordion .slider-title {
	font-size: 1.125rem;
	margin: 1rem 0 .5rem 0;
}
.cmi-product-page .panel-title a { text-decoration: none; }

/* Buttons inside CTAs */
.cmi-product-page .download-sec .btn,
.cmi-product-page .discount-sec .btn {
	font-weight: 600;
	letter-spacing: .2px;
}

/* Responsive tweaks */
@media (max-width: 767.98px) {
	.cmi-product-page #myTab { overflow-x: auto; white-space: nowrap; display: flex; }
	.cmi-product-page #myTab .nav-item { flex: 0 0 auto; }
	.cmi-product-page .ij-purchasing-options .card-header h5 { font-size: 1rem; }
	.cmi-product-page .purchase-summary .license-sec { padding: 0.35rem 0.25rem; }
}

@media (max-width: 374px) and (min-width: 320px) {
	.cmi-product-page .head-cart { margin-left: 8px; }
	.cmi-product-page .banner-bg { padding: 25px 10px !important; }
	.cmi-product-page .btn-mdf-button { font-size: 12px; }
	.cmi-product-page .purchase-summary .currency-sec .custom-control-label,
	.cmi-product-page .purchase-summary .license-sec .custom-control-label { font-size: 12px !important; }
}
