:root {
	--rs1421-ink: #fff8e7;
	--rs1421-copy: #eee7ff;
	--rs1421-muted: #cfc3e8;
	--rs1421-gold: #f5c24f;
	--rs1421-gold-soft: #ffe8a3;
	--rs1421-violet: #7040f2;
	--rs1421-panel: rgba(24, 7, 58, .94);
	--rs1421-panel-soft: rgba(43, 16, 83, .92);
	--rs1421-line: rgba(245, 194, 79, .62);
}

.rs-subscription-pricing-surface-v1421 .site-content,
.rs-subscription-pricing-surface-v1421 #page {
	background: #100728;
}

.rs1421-pricing {
	position: relative;
	isolation: isolate;
	min-height: 100vh;
	padding: 34px 0 78px;
	color: var(--rs1421-copy);
	background:
		linear-gradient(180deg, rgba(12, 4, 31, .42), rgba(22, 7, 52, .96)),
		image-set(
			url('../img/lesson-v146/fundal-card-premium.webp') type('image/webp'),
			url('../img/lesson-v146/fundal-card-premium.png') type('image/png')
		) center top / cover fixed;
}

.rs1421-pricing::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(circle at 18% 12%, rgba(172, 78, 255, .23), transparent 31%),
		radial-gradient(circle at 82% 18%, rgba(245, 194, 79, .13), transparent 29%);
}

.rs1421-wrap {
	width: min(1180px, calc(100% - 32px));
	margin: 0 auto;
}

.rs1421-hero,
.rs1421-demo,
.rs1421-section,
.rs1421-plan,
.rs1421-final-cta {
	border: 1px solid var(--rs1421-line);
	box-shadow: 0 24px 80px rgba(5, 0, 19, .34), inset 0 1px 0 rgba(255, 255, 255, .06);
}

.rs1421-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(30px, 6vw, 68px);
	text-align: center;
	border-radius: 34px;
	background: linear-gradient(135deg, rgba(27, 7, 62, .98), rgba(59, 22, 104, .95));
}

.rs1421-hero::after {
	content: "♛";
	position: absolute;
	right: clamp(18px, 5vw, 68px);
	top: 14px;
	font-size: clamp(80px, 16vw, 210px);
	line-height: 1;
	color: rgba(255, 226, 143, .055);
	transform: rotate(8deg);
	pointer-events: none;
}

.rs1421-eyebrow,
.rs1421-plan__eyebrow,
.rs1421-demo__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 6px 14px;
	border: 1px solid rgba(245, 194, 79, .72);
	border-radius: 999px;
	background: rgba(76, 30, 129, .88);
	color: #fff5c8;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .065em;
	text-transform: uppercase;
}

.rs1421-hero h1 {
	position: relative;
	z-index: 1;
	max-width: 920px;
	margin: 18px auto 16px;
	color: var(--rs1421-ink);
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(38px, 6vw, 72px);
	line-height: 1.03;
	letter-spacing: -.035em;
}

.rs1421-hero p {
	position: relative;
	z-index: 1;
	max-width: 820px;
	margin: 0 auto;
	color: var(--rs1421-copy);
	font-size: clamp(17px, 2vw, 20px);
	line-height: 1.72;
}

.rs1421-actions {
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 26px;
}

.rs1421-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 12px 22px;
	border: 1px solid rgba(255, 226, 143, .58);
	border-radius: 999px;
	background: rgba(42, 13, 84, .92);
	color: #fff !important;
	font-weight: 900;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.rs1421-button:hover {
	transform: translateY(-2px);
	background: #4b1da0;
	box-shadow: 0 14px 34px rgba(0, 0, 0, .28);
}

.rs1421-button--gold {
	border-color: #ffe69a;
	background: linear-gradient(135deg, #f5c24f, #df9e24);
	color: #24103f !important;
}

.rs1421-button--gold:hover { background: linear-gradient(135deg, #ffdb79, #e8aa31); }

.rs1421-button:focus-visible,
.rs1421-faq summary:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 4px;
}

.rs1421-demo {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 22px;
	align-items: center;
	margin-top: 22px;
	padding: 22px 26px;
	border-radius: 24px;
	background: rgba(27, 8, 62, .96);
}

.rs1421-demo__icon {
	display: grid;
	place-items: center;
	width: 62px;
	height: 62px;
	border: 1px solid var(--rs1421-line);
	border-radius: 20px;
	background: rgba(112, 64, 242, .25);
	font-size: 30px;
}

.rs1421-demo h2,
.rs1421-section h2,
.rs1421-final-cta h2 {
	margin: 0 0 7px;
	color: var(--rs1421-gold-soft);
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(25px, 3vw, 38px);
	line-height: 1.15;
}

.rs1421-demo p,
.rs1421-section p,
.rs1421-final-cta p {
	margin: 0;
	color: var(--rs1421-copy);
	line-height: 1.68;
}

.rs1421-plans {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 24px;
}

.rs1421-plan {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 26px;
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(38, 11, 78, .98), rgba(21, 7, 50, .98));
}

.rs1421-plan--featured {
	border-width: 2px;
	background: linear-gradient(180deg, rgba(74, 25, 128, .98), rgba(27, 8, 61, .98));
	transform: translateY(-8px);
}

.rs1421-plan__recommended {
	position: absolute;
	right: 18px;
	top: 18px;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--rs1421-gold);
	color: #28103e;
	font-size: 11px;
	font-weight: 950;
	text-transform: uppercase;
}

.rs1421-plan h2 {
	margin: 17px 0 7px;
	color: var(--rs1421-ink);
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(27px, 3vw, 35px);
	line-height: 1.12;
}

.rs1421-plan__description {
	min-height: 78px;
	margin: 0;
	color: var(--rs1421-copy);
	line-height: 1.62;
}

.rs1421-price {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin: 22px 0 4px;
	color: var(--rs1421-gold-soft);
}

.rs1421-price strong {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(34px, 4vw, 48px);
	line-height: 1;
}

.rs1421-price span { color: var(--rs1421-muted); font-weight: 800; }

.rs1421-plan__saving {
	min-height: 24px;
	margin: 2px 0 8px;
	color: #ffe79b;
	font-size: 13px;
	font-weight: 800;
}

.rs1421-features {
	padding: 0;
	margin: 17px 0 24px;
	list-style: none;
}

.rs1421-features li {
	position: relative;
	padding: 8px 0 8px 28px;
	color: var(--rs1421-copy);
	line-height: 1.48;
}

.rs1421-features li::before {
	content: "✦";
	position: absolute;
	left: 0;
	top: 8px;
	color: var(--rs1421-gold);
	font-weight: 900;
}

.rs1421-plan .rs1421-button { width: 100%; margin-top: auto; }

.rs1421-plan__footnote {
	margin: 12px 0 0;
	color: var(--rs1421-muted);
	font-size: 12px;
	line-height: 1.55;
	text-align: center;
}

.rs1421-section {
	margin-top: 24px;
	padding: clamp(24px, 4vw, 38px);
	border-radius: 28px;
	background: rgba(24, 7, 58, .96);
}

.rs1421-section__intro { max-width: 820px; }

.rs1421-compare-wrap {
	overflow-x: auto;
	margin-top: 20px;
	border: 1px solid rgba(245, 194, 79, .36);
	border-radius: 20px;
}

.rs1421-compare {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
	background: rgba(10, 3, 29, .48);
}

.rs1421-compare th,
.rs1421-compare td {
	padding: 15px 17px;
	border-bottom: 1px solid rgba(255, 255, 255, .11);
	color: var(--rs1421-copy);
	text-align: center;
}

.rs1421-compare th:first-child,
.rs1421-compare td:first-child { text-align: left; }
.rs1421-compare thead th { color: var(--rs1421-gold-soft); background: rgba(88, 34, 139, .34); }
.rs1421-yes { color: #aef2c1 !important; font-weight: 900; }
.rs1421-na { color: var(--rs1421-muted) !important; }

.rs1421-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin-top: 20px;
}

.rs1421-step {
	padding: 20px;
	border: 1px solid rgba(245, 194, 79, .32);
	border-radius: 20px;
	background: rgba(70, 28, 120, .31);
}

.rs1421-step b {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin-bottom: 13px;
	border-radius: 13px;
	background: var(--rs1421-gold);
	color: #28103e;
}

.rs1421-step h3 { margin: 0 0 8px; color: #fff8df; font-size: 19px; }
.rs1421-step p { color: var(--rs1421-copy); }

.rs1421-faq { display: grid; gap: 10px; margin-top: 18px; }
.rs1421-faq details {
	border: 1px solid rgba(245, 194, 79, .31);
	border-radius: 17px;
	background: rgba(53, 18, 96, .38);
}
.rs1421-faq summary {
	cursor: pointer;
	padding: 17px 20px;
	color: #fff5d1;
	font-weight: 900;
}
.rs1421-faq details p { padding: 0 20px 18px; }

.rs1421-prelaunch {
	margin-top: 18px;
	padding: 15px 18px;
	border-left: 4px solid var(--rs1421-gold);
	border-radius: 8px 16px 16px 8px;
	background: rgba(245, 194, 79, .1);
	color: #f7f0ff;
	line-height: 1.62;
}

.rs1421-final-cta {
	margin-top: 24px;
	padding: clamp(28px, 5vw, 52px);
	border-radius: 30px;
	text-align: center;
	background: linear-gradient(135deg, rgba(67, 20, 119, .97), rgba(24, 6, 58, .98));
}

.rs1421-final-cta p { max-width: 720px; margin: 0 auto; }

@media (max-width: 960px) {
	.rs1421-plans { grid-template-columns: 1fr; }
	.rs1421-plan--featured { transform: none; }
	.rs1421-plan__description { min-height: 0; }
	.rs1421-steps { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
	.rs1421-pricing { padding-top: 18px; }
	.rs1421-wrap { width: min(100% - 20px, 1180px); }
	.rs1421-hero { padding: 28px 19px; border-radius: 24px; }
	.rs1421-demo { grid-template-columns: 1fr; padding: 20px; }
	.rs1421-demo__icon { width: 52px; height: 52px; }
	.rs1421-demo .rs1421-button { width: 100%; }
	.rs1421-plan { padding: 21px; border-radius: 23px; }
	.rs1421-plan__recommended { position: static; align-self: flex-start; margin-bottom: 10px; }
	.rs1421-actions .rs1421-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.rs1421-button { transition: none; }
	.rs1421-button:hover { transform: none; }
	.rs1421-plan--featured { transform: none; }
	.rs1421-pricing { background-attachment: scroll; }
}
