/* FlowMattic Pricing Page Styles */

/* Global Styles */
.fm-pricing-page {
	background: #ffffff;
}

.ast-container.flex-col,
.ast-container[style*="flex-direction: column"] {
	flex-direction: column !important;
}

html {
	scroll-behavior: smooth;
}

/* Hero Section */
.fm-pricing-hero {
	position: relative;
	min-height: 500px;
	display: flex;
	align-items: center;
	background: #f8fafc;
	padding: 100px 0 80px;
	overflow: hidden;
	border-bottom: 1px solid #e2e8f0;
}

.fm-pricing-hero-content {
	position: relative;
	z-index: 10;
	text-align: center;
	max-width: 900px;
	margin: 0 auto 40px;
}

.fm-pricing-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 24px;
	background: white;
	border: 1px solid #e2e8f0;
	border-radius: 24px;
	font-size: 14px;
	font-weight: 600;
	color: #3b82f6;
	margin-bottom: 24px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.fm-pricing-badge svg {
	color: #3b82f6;
	flex-shrink: 0;
}

.fm-pricing-hero-title {
	font-size: 56px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin: 0 0 24px 0 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em;
}

.fm-gradient-text {
	background: linear-gradient(135deg, #3b82f6 0%, #2563eb 50%, #8b5cf6 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

@supports not (background-clip: text) {
	.fm-gradient-text {
		color: #3b82f6;
	}
}

.fm-pricing-hero-description {
	font-size: 20px;
	line-height: 1.6;
	color: #64748b;
	margin: 0;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

/* Trust Badges */
.fm-trust-badges {
	display: flex;
	gap: 32px;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 40px;
}

.fm-trust-badge {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 24px;
	background: white;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	font-size: 15px;
	font-weight: 600;
	color: #0f172a;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.fm-trust-badge svg {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
}

/* Pricing Cards Section */
.fm-pricing-cards-section {
	padding: 80px 0;
	background: white;
}

.fm-pricing-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	max-width: 1320px;
	margin: 0 auto;
}

.fm-pricing-card {
	background: white;
	border: 2px solid #e2e8f0;
	border-radius: 6px;
	padding: 32px 24px;
	display: flex;
	flex-direction: column;
	position: relative;
	transition: all 0.3s ease;
}

.fm-pricing-card:hover {
	border-color: #cbd5e1;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
	transform: translateY(-4px);
}

.fm-pricing-card-featured {
	border-color: #3b82f6;
	box-shadow: 0 8px 24px rgba(59, 130, 246, 0.15);
	background: #fafbff;
}

.fm-pricing-card-featured:hover {
	border-color: #3b82f6;
	box-shadow: 0 12px 32px rgba(59, 130, 246, 0.25);
}

.fm-pricing-card-badge {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 16px;
	background: #3b82f6;
	color: white;
	border-radius: 24px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
}

.fm-pricing-card-badge svg {
	width: 12px;
	height: 12px;
}

.fm-pricing-card-header {
	text-align: center;
	padding-bottom: 24px;
	border-bottom: 1px solid #e2e8f0;
	margin-bottom: 24px;
}

.fm-pricing-card-title {
	font-size: 24px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	margin: 0 0 16px 0 !important;
	line-height: 1.2 !important;
}

.fm-pricing-card-price {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 4px;
	margin-bottom: 8px;
}

.fm-price-currency {
	font-size: 24px;
	font-weight: 600;
	color: #64748b;
}

.fm-price-amount {
	font-size: 48px;
	font-weight: 800;
	color: #0f172a;
	line-height: 1;
}

.fm-price-period {
	font-size: 18px;
	color: #64748b;
	font-weight: 500;
}

.fm-pricing-card-original {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 8px;
}

.fm-original-price {
	font-size: 16px;
	color: #94a3b8;
	text-decoration: line-through;
}

.fm-save-badge {
	display: inline-block;
	padding: 4px 10px;
	background: #dcfce7;
	color: #16a34a;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 700;
}

.fm-pricing-card-inr {
	font-size: 14px;
	color: #3b82f6;
	font-weight: 600;
}

.fm-pricing-card-features {
	flex: 1;
	margin-bottom: 24px;
}

.fm-pricing-card-features .plan-features {
	list-style: none;
	padding: 0;
	margin: 0 0 20px 0;
}

.fm-pricing-card-features .plan-features li {
	padding: 8px 0;
	color: #64748b;
	font-size: 14px;
	line-height: 1.5;
}

.fm-pricing-card-features .plan-features li.highlight-item {
	color: #3b82f6;
	font-weight: 600;
}

.fm-features-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fm-features-list li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 0;
	color: #475569;
	font-size: 14px;
	line-height: 1.5;
	border-bottom: 1px solid #f1f5f9;
}

.fm-features-list li:last-child {
	border-bottom: none;
}

.fm-features-list li svg {
	flex-shrink: 0;
}

.fm-pricing-card-footer {
	text-align: center;
}

.fm-pricing-form {
	margin-bottom: 12px;
}

.fm-pricing-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 16px 32px;
	border: none;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.fm-pricing-button-primary {
	background: #3b82f6;
	color: white;
	box-shadow: 0 4px 14px rgba(59, 130, 246, 0.4);
}

.fm-pricing-button-primary:hover {
	background: #2563eb;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(59, 130, 246, 0.5);
}

.fm-pricing-button-secondary {
	background: white;
	color: #3b82f6;
	border: 2px solid #3b82f6;
}

.fm-pricing-button-secondary:hover {
	background: #f8fafc;
	border-color: #2563eb;
	color: #2563eb;
}

.fm-pricing-card-guarantee {
	font-size: 12px;
	color: #64748b;
	margin: 8px 0 0 0;
}

/* All Plans Include Section */
.fm-all-plans-include-section {
	padding: 80px 0;
	background: #f8fafc;
	border-top: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
}

.fm-section-header {
	text-align: center;
	margin-bottom: 60px;
}

.fm-section-title {
	font-size: 42px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	margin: 0 0 16px 0 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.01em;
}

.fm-section-subtitle {
	font-size: 18px;
	color: #64748b;
	margin: 0;
	line-height: 1.6;
}

.fm-all-features-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	max-width: 1320px;
	margin: 0 auto;
}

.fm-all-features-column {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.fm-all-feature-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid #e2e8f0;
}

.fm-all-feature-item:last-child {
	border-bottom: none;
}

.fm-all-feature-item .fm-check-icon {
	flex-shrink: 0;
	margin-top: 2px;
}

.fm-all-feature-item span:last-child {
	font-size: 16px;
	color: #1f2937;
	line-height: 1.5;
}

/* Money Back Guarantee Section */
.fm-guarantee-section {
	padding: 80px 0;
	background: white;
}

.fm-guarantee-wrapper {
	display: flex;
	align-items: flex-start;
	gap: 60px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 60px;
	background: #f8fafc;
	border-radius: 12px;
	border: 2px solid #e2e8f0;
}

.fm-guarantee-badge {
	flex-shrink: 0;
}

.fm-guarantee-badge img {
	width: 240px;
	height: auto;
	display: block;
}

.fm-guarantee-content {
	flex: 1;
}

.fm-guarantee-title {
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	margin: 0 0 20px 0 !important;
	line-height: 1.3 !important;
}

.fm-guarantee-description {
	font-size: 17px;
	line-height: 1.7;
	color: #475569;
	margin: 0 0 32px 0;
}

.fm-guarantee-signature {
	margin-top: 32px;
	padding-top: 24px;
	border-top: 2px solid #e2e8f0;
}

.fm-signature-name {
	font-size: 18px;
	color: #0f172a;
	margin: 0 0 4px 0;
}

.fm-signature-name strong {
	font-weight: 700;
}

.fm-signature-title {
	font-size: 15px;
	color: #64748b;
	margin: 0;
}

.fm-check-icon {
	color: #3b82f6;
	font-weight: 700;
	font-size: 18px;
	display: inline-block;
}

/* Testimonial Section */
.fm-testimonial-section {
	padding: 80px 0;
	background: #f8fafc;
	position: relative;
	overflow: hidden;
}

.fm-testimonial-card {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
	position: relative;
	z-index: 1;
	padding: 60px 40px;
}

.fm-testimonial-stars {
	display: flex;
	gap: 6px;
	justify-content: center;
	margin-top: 12px;
}

.fm-testimonial-stars svg {
	width: 20px;
	height: 20px;
}

.fm-testimonial-quote {
	font-size: 22px;
	line-height: 1.7;
	color: #1f2937;
	font-weight: 500;
	font-style: italic;
	margin: 0 0 20px 0;
	position: relative;
	border-left: none !important;
	padding-left: 0 !important;
}

.fm-testimonial-quote::before {
	content: '';
	display: block;
	width: 40px;
	height: 32px;
	margin: 0 auto 20px;
	background-image: url("data:image/svg+xml,%3Csvg width='40' height='32' viewBox='0 0 40 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 17.92V32h12.8V17.92H6.4C6.4 10.688 9.216 7.872 16.448 7.872V0C5.952 0 0 5.952 0 17.92zM21.6 17.92V32h12.8V17.92h-6.4c0-7.232 2.816-10.048 10.048-10.048V0c-10.496 0-16.448 5.952-16.448 17.92z' fill='%23cbd5e1'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.fm-testimonial-author {
	font-size: 18px;
	color: #0f172a;
	margin: 0;
}

.fm-testimonial-author strong {
	font-weight: 700;
	color: #0f172a;
}

/* FAQ Section */
.fm-faq-section {
	padding: 80px 0;
	background: #f8fafc;
	border-top: 1px solid #e2e8f0;
}

.fm-faq-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 32px;
	margin: 0 auto;
}

.fm-faq-item {
	background: white;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	padding: 32px;
	transition: all 0.3s ease;
}

.fm-faq-item:hover {
	border-color: #cbd5e1;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.fm-faq-question {
	font-size: 18px !important;
	font-weight: 600 !important;
	color: #0f172a !important;
	margin: 0 0 12px 0 !important;
	line-height: 1.4 !important;
}

.fm-faq-answer {
	font-size: 15px;
	line-height: 1.6;
	color: #64748b;
	margin: 0;
}

/* Final CTA Section */
.fm-pricing-cta-section {
	padding: 100px 0;
	background: #0f172a;
	border-top: 1px solid #1e293b;
	position: relative;
	overflow: hidden;
}

.fm-pricing-cta-section::before {
	content: '';
	position: absolute;
	top: -200px;
	right: -200px;
	width: 600px;
	height: 600px;
	background: radial-gradient(circle, rgba(59, 130, 246, 0.1) 0%, transparent 70%);
	border-radius: 50%;
	pointer-events: none;
}

.fm-pricing-cta-section::after {
	content: '';
	position: absolute;
	bottom: -200px;
	left: -200px;
	width: 600px;
	height: 600px;
	background: radial-gradient(circle, rgba(139, 92, 246, 0.1) 0%, transparent 70%);
	border-radius: 50%;
	pointer-events: none;
}

.fm-pricing-cta-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	max-width: 1320px;
	margin: 0 auto;
	align-items: center;
	position: relative;
	z-index: 1;
}

.fm-cta-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 20px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 24px;
	font-size: 13px;
	font-weight: 600;
	color: #60a5fa;
	margin-bottom: 24px;
}

.fm-cta-badge svg {
	width: 14px;
	height: 14px;
	color: #60a5fa;
}

.fm-cta-main-title {
	font-size: 42px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 20px 0 !important;
	line-height: 1.2 !important;
}

.fm-cta-main-description {
	font-size: 18px;
	line-height: 1.6;
	color: #cbd5e1;
	margin: 0 0 40px 0;
}

.fm-cta-benefits {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 40px;
}

.fm-cta-benefit {
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

.fm-cta-benefit svg {
	flex-shrink: 0;
	margin-top: 2px;
}

.fm-cta-benefit strong {
	display: block;
	color: #f1f5f9;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 4px;
}

.fm-cta-benefit p {
	color: #94a3b8;
	font-size: 14px;
	margin: 0;
	line-height: 1.5;
}

.fm-cta-actions {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin-top: 32px;
	padding-top: 32px;
	border-top: 1px solid #e2e8f0;
}

.fm-cta-btn-primary,
.fm-cta-btn-outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 16px 32px;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.3s ease;
	flex: 1;
	min-width: 200px;
}

.fm-cta-btn-primary {
	background: #3b82f6;
	color: white;
	border: none;
	box-shadow: 0 4px 14px rgba(59, 130, 246, 0.4);
}

.fm-cta-btn-primary:hover {
	background: #2563eb;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(59, 130, 246, 0.5);
	color: white;
}

.fm-cta-btn-outline {
	background: white;
	color: #0f172a;
	border: 2px solid #e2e8f0;
}

.fm-cta-btn-outline:hover {
	border-color: #3b82f6;
	background: #f8fafc;
	color: #3b82f6;
}

.fm-cta-guarantee-card {
	background: white;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	padding: 40px;
	text-align: center;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.fm-guarantee-icon {
	margin: 0 auto 24px;
	width: 64px;
	height: 64px;
}

.fm-cta-guarantee-card h3 {
	font-size: 24px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	margin: 0 0 16px 0 !important;
	line-height: 1.3 !important;
}

.fm-cta-guarantee-card p {
	font-size: 15px;
	line-height: 1.6;
	color: #64748b;
	margin: 0 0 32px 0;
}

.fm-cta-stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	padding-top: 32px;
	border-top: 1px solid #e2e8f0;
}

.fm-cta-stat {
	text-align: center;
}

.fm-stat-value {
	font-size: 32px;
	font-weight: 800;
	color: #3b82f6;
	line-height: 1;
	margin-bottom: 8px;
}

.fm-stat-label {
	font-size: 13px;
	color: #64748b;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Responsive Styles */
@media (max-width: 1200px) {
	.fm-pricing-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.fm-all-features-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}

	.fm-pricing-cta-wrapper {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.fm-cta-guarantee-card {
		max-width: 600px;
		margin: 0 auto;
	}

	.fm-guarantee-wrapper {
		gap: 40px;
		padding: 50px 40px;
	}

	.fm-guarantee-badge img {
		width: 200px;
	}
}

@media (max-width: 921px) {
	.fm-pricing-hero {
		padding: 80px 0 60px;
	}

	.fm-pricing-hero-title {
		font-size: 42px !important;
	}

	.fm-pricing-hero-description {
		font-size: 18px;
	}

	.fm-trust-badges {
		gap: 16px;
	}

	.fm-section-title {
		font-size: 36px !important;
	}

	.fm-pricing-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.fm-all-features-list {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.fm-faq-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.fm-cta-main-title {
		font-size: 36px !important;
	}

	.fm-pricing-cta-section {
		padding: 80px 0;
	}

	.fm-guarantee-wrapper {
		flex-direction: column;
		gap: 32px;
		padding: 40px 32px;
	}

	.fm-guarantee-badge {
		text-align: center;
	}

	.fm-guarantee-badge img {
		width: 180px;
		margin: 0 auto;
	}

	.fm-guarantee-title {
		font-size: 28px !important;
	}

	.fm-testimonial-card {
		padding: 50px 30px;
	}

	.fm-testimonial-quote {
		font-size: 20px;
	}
}

@media (max-width: 544px) {
	.fm-pricing-hero {
		padding: 60px 0 40px;
		min-height: 400px;
	}

	.fm-pricing-hero-title {
		font-size: 32px !important;
	}

	.fm-pricing-hero-description {
		font-size: 16px;
	}

	.fm-trust-badges {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.fm-trust-badge {
		justify-content: center;
	}

	.fm-pricing-cards-section,
	.fm-all-plans-include-section,
	.fm-guarantee-section,
	.fm-testimonial-section,
	.fm-faq-section,
	.fm-pricing-cta-section {
		padding: 60px 0;
	}

	.fm-all-features-list {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.fm-section-title {
		font-size: 28px !important;
	}

	.fm-section-subtitle {
		font-size: 16px;
	}

	.fm-pricing-card {
		padding: 24px 20px;
	}

	.fm-price-amount {
		font-size: 40px;
	}

	.fm-pricing-button {
		padding: 14px 24px;
		font-size: 15px;
	}

	.fm-guarantee-wrapper {
		padding: 32px 24px;
	}

	.fm-guarantee-badge img {
		width: 160px;
	}

	.fm-guarantee-title {
		font-size: 24px !important;
	}

	.fm-guarantee-description {
		font-size: 15px;
	}

	.fm-testimonial-card {
		padding: 40px 24px;
	}

	.fm-testimonial-stars svg {
		width: 20px;
		height: 20px;
	}

	.fm-testimonial-quote {
		font-size: 17px;
	}

	.fm-testimonial-author {
		font-size: 16px;
	}

	.fm-cta-main-title {
		font-size: 28px !important;
	}

	.fm-cta-main-description {
		font-size: 16px;
	}

	.fm-cta-actions {
		flex-direction: column;
	}

	.fm-cta-btn-primary,
	.fm-cta-btn-outline {
		width: 100%;
		justify-content: center;
		min-width: 100%;
	}

	.fm-cta-guarantee-card {
		padding: 32px 24px;
	}

	.fm-cta-stats {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

/* SmartPay Pricing Cards Styling */

/* Grid Layout */
.smartpay-product-shortcode .list-group {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 20px !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Pricing Card */
.smartpay-product-shortcode .variation-item.price {
	background: #ffffff !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 8px !important;
	padding: 0 !important;
	margin: 0 !important;
	position: relative !important;
	transition: all 0.3s ease !important;
	display: flex !important;
	flex-direction: column !important;
}

.smartpay-product-shortcode .variation-item.price:hover {
	border-color: #d1d5db !important;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
	/* transform: translateY(-2px) !important; */
}

.smartpay-product-shortcode .variation-item.price.selected {
	border-color: #0d6efd !important;
	box-shadow: 0 10px 30px rgba(13, 110, 253, 0.2) !important;
}

.smartpay .smartpay-product-shortcode .product--price-section .price {
	overflow: visible !important;
	max-width: 400px !important;
}

/* Popular Badge */
.fm-popular-badge {
	position: absolute;
	top: -15px;
	left: 50%;
	width: 145px;
	transform: translateX(-50%);
	background: #0d6efd;
	color: white;
	padding: 6px 16px;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
	gap: 4px;
	z-index: 10;
}

.fm-popular-badge span:first-child {
	font-size: 14px;
}

/* Plan Header */
.fm-plan-header {
	padding: 32px 24px 24px;
	text-align: center;
	border-bottom: 1px solid #f3f4f6;
	border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.variation-item.price.selected .fm-plan-header {
	background: #eff5ff;
}

.fm-plan-header .price--title {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #111827 !important;
	margin: 0 0 16px 0 !important;
}

/* Price Display */
.fm-plan-header .price--amount {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 2px;
	margin-bottom: 8px;
}
.smartpay .smartpay-product-shortcode .product--price-section .price--amount:after,
.smartpay .smartpay-product-shortcode .product--price-section .price--amount:before {
	margin-left: -36px !important;
	border-width: 36px !important;
}
.smartpay .smartpay-product-shortcode .product--price-section .price--amount {
    padding-left: 20px;
    padding-right: 20px;
    margin-left: -20px;
}

.fm-plan-header .fm-currency {
	font-size: 24px;
	font-weight: 600;
	color: #6b7280;
}

.fm-plan-header .sale-price {
	font-size: 48px !important;
	font-weight: 800 !important;
	color: #111827 !important;
	line-height: 1 !important;
}

.fm-plan-header .fm-period {
	font-size: 16px;
	color: #6b7280;
	font-weight: 500;
}

/* Billing Cycle */
.fm-billing-cycle {
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 8px;
}

/* Price Meta (Original Price + Save Badge) */
.fm-price-meta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 8px;
}

.fm-price-meta .base-price {
	font-size: 14px;
	color: #9ca3af;
}

.fm-save-badge {
	display: inline-block;
	padding: 4px 8px;
	background: #d1fae5;
	color: #065f46;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 600;
}

/* INR Pricing */
.price-inr-amount {
	font-size: 13px !important;
	color: #0d6efd !important;
	font-weight: 600 !important;
	margin: 0 !important;
}

/* Plan Features */
.fm-plan-features {
	padding: 24px;
	flex: 1;
}

.variation--description {
	margin-bottom: 20px;
}

.variation--description p {
	font-size: 14px !important;
	color: #6b7280 !important;
	line-height: 1.6 !important;
	margin: 0 !important;
}

/* Feature List */
.fm-feature-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fm-feature-list li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	font-size: 14px;
	color: #374151;
	border-bottom: 1px solid #f3f4f6;
}

.fm-feature-list li:last-child {
	border-bottom: none;
}

.fm-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	background: #eff6ff;
	color: #0d6efd;
	border-radius: 50%;
	flex-shrink: 0;
}

.fm-check svg {
	display: block;
}

/* Plan Footer */
.fm-plan-footer {
	padding: 24px;
	text-align: center;
}

/* CTA Button */
.fm-cta-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 14px 24px !important;
	background: #0d6efd !important;
	color: white !important;
	border: none !important;
	border-radius: 6px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer;
	transition: all 0.3s ease !important;
	box-shadow: 0 4px 12px rgba(13, 110, 253, 0.3) !important;
}

.fm-cta-button:hover {
	background: #0b5ed7 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 6px 16px rgba(13, 110, 253, 0.4) !important;
}

.variation-item.price:not(.selected) .fm-cta-button {
	background: white !important;
	color: #0d6efd !important;
	border: 2px solid #0d6efd !important;
	box-shadow: none !important;
}

.variation-item.price:not(.selected) .fm-cta-button:hover {
	background: #ebf3ff !important;
	color: #0d6efd !important;
	border-color: #0d6efd !important;
}

.fm-arrow {
	font-size: 18px;
	transition: transform 0.3s ease;
}

.fm-cta-button:hover .fm-arrow {
	transform: translateX(3px);
}

/* Guarantee Text */
.fm-guarantee {
	margin: 12px 0 0 0 !important;
	font-size: 12px !important;
	color: #6b7280 !important;
}

/* Responsive Design */
@media (max-width: 1200px) {
	.smartpay-product-shortcode .list-group {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
	}
	.smartpay .smartpay-product-shortcode .product--price-section .price {
		max-width: 100% !important;
	}
}

@media (max-width: 768px) {
	.smartpay-product-shortcode .list-group {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}

	.fm-plan-header .sale-price {
		font-size: 40px !important;
	}

	.fm-plan-header {
		padding: 24px 20px 20px;
	}

	.fm-plan-features,
	.fm-plan-footer {
		padding: 20px;
	}
}

/* Lifetime Plans Warning Section */
.fm-lifetime-warning-section {
	padding: 40px 0;
	background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%);
}

.fm-lifetime-warning-card {
	display: flex;
	align-items: center;
	gap: 20px;
	background: white;
	border: 2px solid #ef4444;
	border-radius: 16px;
	padding: 30px 40px;
	box-shadow: 0 10px 40px rgba(239, 68, 68, 0.2);
	position: relative;
	overflow: hidden;
}

.fm-lifetime-warning-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(239, 68, 68, 0.1), transparent);
	animation: fm-warning-shimmer 3s linear infinite;
}

@keyframes fm-warning-shimmer {
	0% {
		left: -100%;
	}
	100% {
		left: 100%;
	}
}

.fm-lifetime-warning-icon {
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%);
	border-radius: 12px;
	animation: fm-warning-pulse 2s ease-in-out infinite;
}

@keyframes fm-warning-pulse {
	0%, 100% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4);
	}
	50% {
		transform: scale(1.05);
		box-shadow: 0 0 0 10px rgba(239, 68, 68, 0);
	}
}

.fm-lifetime-warning-content {
	flex: 1;
	position: relative;
	z-index: 1;
}

.fm-lifetime-warning-content h3 {
	margin: 0 0 8px 0;
	font-size: 24px;
	font-weight: 700;
	color: #991b1b;
	line-height: 1.3;
}

.fm-lifetime-warning-content p {
	margin: 0;
	font-size: 16px;
	color: #475569;
	line-height: 1.6;
}

.fm-lifetime-warning-content strong {
	color: #991b1b;
	background: #fee2e2;
	padding: 2px 8px;
	border-radius: 4px;
	font-weight: 700;
}

/* Black Friday Offer Section */
.fm-bfcm-offer-section {
	padding: 40px 0;
	background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
}

.fm-bfcm-offer-card {
	display: flex;
	align-items: center;
	gap: 20px;
	background: white;
	border: 2px solid #fbbf24;
	border-radius: 16px;
	padding: 30px 40px;
	box-shadow: 0 10px 40px rgba(251, 191, 36, 0.2);
	position: relative;
	overflow: hidden;
}

.fm-bfcm-offer-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(251, 191, 36, 0.1), transparent);
	animation: fm-offer-shimmer 3s linear infinite;
}

@keyframes fm-offer-shimmer {
	0% {
		left: -100%;
	}
	100% {
		left: 100%;
	}
}

.fm-bfcm-offer-icon {
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
	border-radius: 12px;
	animation: fm-offer-bounce 2s ease-in-out infinite;
}

@keyframes fm-offer-bounce {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-8px);
	}
}

.fm-bfcm-offer-content {
	flex: 1;
	position: relative;
	z-index: 1;
}

.fm-bfcm-offer-content h3 {
	margin: 0 0 8px 0;
	font-size: 24px;
	font-weight: 700;
	color: #1e1b4b;
	line-height: 1.3;
}

.fm-bfcm-offer-content p {
	margin: 0;
	font-size: 16px;
	color: #475569;
	line-height: 1.6;
}

.fm-bfcm-offer-content strong {
	color: #1e1b4b;
	background: #fef3c7;
	padding: 2px 8px;
	border-radius: 4px;
	font-weight: 700;
	letter-spacing: 0.5px;
}

/* Responsive Styles */
@media screen and (max-width: 768px) {
	.fm-lifetime-warning-section,
	.fm-bfcm-offer-section {
		padding: 30px 0;
	}

	.fm-lifetime-warning-card,
	.fm-bfcm-offer-card {
		flex-direction: column;
		text-align: center;
		padding: 25px 20px;
	}

	.fm-lifetime-warning-icon,
	.fm-bfcm-offer-icon {
		width: 50px;
		height: 50px;
	}

	.fm-lifetime-warning-content h3,
	.fm-bfcm-offer-content h3 {
		font-size: 20px;
	}

	.fm-lifetime-warning-content p,
	.fm-bfcm-offer-content p {
		font-size: 15px;
	}
}

@media screen and (max-width: 480px) {
	.fm-lifetime-warning-card,
	.fm-bfcm-offer-card {
		padding: 20px 16px;
	}

	.fm-lifetime-warning-content h3,
	.fm-bfcm-offer-content h3 {
		font-size: 18px;
	}

	.fm-lifetime-warning-content p,
	.fm-bfcm-offer-content p {
		font-size: 14px;
	}
}

/* Print Styles */
@media print {
	.fm-pricing-hero,
	.fm-pricing-cta-section {
		page-break-after: avoid;
	}

	.fm-pricing-card {
		page-break-inside: avoid;
	}

	.payment-modal {
		display: none !important;
	}

	.fm-lifetime-warning-section,
	.fm-bfcm-offer-section {
		display: none !important;
	}
}
