/* Payment Options Block
   Scoped under .payment-options
   Plain CSS — no SCSS, no build step required.
   Reuses existing class names: pricing-card, pricing-card-content, msg-offer, active, iif, pp
   Plus new hooks: .pc-product, .pc-radio, .pc-strike, .pc-price, .pc-suffix, .pc-subtext, .pc-offer, .pc-disclaimer
*/

.payment-options {
	width: 100%;
	margin: 0 auto;
}

/* ── Section cards ─────────────────────────────────────── */
.payment-options .pricing-card {
	border: 2px solid #d0d5dd;
	border-radius: 20px;
	padding: 12px 16px 12px;
	margin-bottom: 12px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
	width: 100%;
	position: relative;
}

.payment-options .pricing-card.iif .msg-offer {
    background: #CEE9A9;
}

.payment-options .pricing-card.pp .msg-offer {
    background: #E6F4D2;
}

.payment-options .pricing-card.active {
	border-color: #3b9fd8;
	background: #ebf6fc;
}

/* ── Section header (title row + optional section pill) ── */
.payment-options .pricing-card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 0px;
}

.payment-options .pricing-card-title {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.payment-options .pricing-card-title span:first-child {
	font-weight: 600;
	font-size: 1.05rem;
	color: #1a1a1a;
}

.payment-options .pricing-card-subtitle {
	font-size: 16px;
	color: #575757;
	text-align: left;
	
}

/* ── Product rows ──────────────────────────────────────── */
.payment-options .pc-product {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 0;
	line-height: 1;
	cursor: pointer;
	position: relative;
	padding-bottom: 0px;
}

/* ── Radio indicator ───────────────────────────────────── */
.payment-options .pc-radio {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 1px solid #244347;
	margin-top: 2px;
	display: block;
	transition: border-color 0.15s, background 0.15s;
	position: relative;
}

.payment-options .pc-product.selected .pc-radio {
    border-color: #244347;
    background: radial-gradient(circle, #c2edf3 45%, #86d8e3 46%);
}

/* ── Price content ─────────────────────────────────────── */
.payment-options .pricing-card-content {
	flex: 1;
	min-width: 0;
	border: 0px !important;
	background: unset !important;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.payment-options .pricing-card-content p {
	margin: 0 0 2px;
	line-height: 1.2 !important;
	text-align: left;
}

.payment-options .pc-strike {
	text-decoration: line-through;
	color: #999;
	font-size: 18px;
	margin-right: 6px;
	font-weight: 600;
}

.payment-options .pc-price {
	color: #1a1a1a;
	font-weight: 600;
	margin-right: 0px;
}

.payment-options .pc-suffix {
	color: #575757;
	font-weight: 400;
    align-self: end;
    padding-bottom: 4px;
    padding-left: 4px;
}

.payment-options .pc-subtext {
	color: #696a6b;
	font-size: 14px;
}

.payment-options .pc-disclaimer {
	color: #888;
	font-size: 14px;
	margin-top: 4px;
}

/* ── Offer pills (product-level and section-level) ─────── */
.payment-options .msg-offer,
.payment-options .pc-offer {
	flex-shrink: 0;
    padding: 4px 12px;
    border-radius: 16px !important;
    text-align: center;
	min-width: 150px;
    max-width: 150px;
	line-height: 1.3;
    padding-top: 12px !important;
	padding-bottom: 12px;
    top: 12px !important;
    right: 12px;
	position: absolute !important;
	/* font-weight: 600; 
}

/* ── Enroll button wrapper ─────────────────────────────── */
.payment-options .col-xs-mt-0.text-center {
	margin-top: 16px;
}

/* ── Utility: hidden ───────────────────────────────────── */
.payment-options .hidden {
	display: none !important;
}

/* ── Responsive ────────────────────────────────────────── */
@media (max-width: 560px) {
	.payment-options .pricing-card-header {
		flex-wrap: wrap;
	}
	.payment-options .pc-product {
		flex-wrap: wrap;
	}
	.payment-options .msg-offer,
	.payment-options .pc-offer {
		max-width: 100%;
	}
}
