.vta-homepage {
	--vta-ink: #0a0e17;
	--vta-ink-2: #0c1120;
	--vta-surface: #141b2d;
	--vta-surface-2: #161f37;
	--vta-line: #243049;
	--vta-line-soft: #1b2336;
	--vta-text: #f8fafc;
	--vta-muted: #94a3b8;
	--vta-muted-2: #a1a1aa;
	--vta-readable: #cbd5e1;
	--vta-readable-soft: #aeb8ca;
	--vta-cta: #5b5fff;
	--vta-cta-2: #7c6dff;
	--vta-cyan: #5bc0be;
	--vta-violet: #7c4dff;
	--vta-glow-cta: rgba(91, 95, 255, .55);
	--vta-glow-cyan: rgba(91, 192, 190, .45);
	--vta-font: "Inter", "Noto Sans TC", "PingFang TC", system-ui, sans-serif;
	--vta-latin: "Satoshi", "Inter", "Noto Sans TC", system-ui, sans-serif;
	--vta-maxw: 1180px;
	--vta-fluid-hero: clamp(3.75rem, 2.08rem + 5.18vw, 5.75rem);
	--vta-fluid-section: clamp(1.875rem, 1.46rem + 1.82vw, 2.75rem);
	--vta-fluid-statement: clamp(1.75rem, 1.02rem + 3.22vw, 3.25rem);
	--vta-fluid-module-number: clamp(4rem, 2.26rem + 7.72vw, 7.5rem);
	--vta-fluid-module-title: clamp(1.375rem, 1.2rem + .78vw, 1.75rem);
	--vta-fluid-card-title: clamp(1.25rem, 1.1rem + .68vw, 1.5625rem);
	--vta-fluid-final: clamp(2.25rem, 1.54rem + 3.12vw, 3.75rem);
	width: 100vw;
	margin-left: calc(50% - 50vw);
	position: relative;
	z-index: 1;
	overflow-x: clip;
	overflow-y: visible;
	background: var(--vta-ink);
	color: var(--vta-text);
	font-family: var(--vta-font);
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
}

.vta-homepage *,
.vta-homepage *::before,
.vta-homepage *::after {
	box-sizing: border-box;
}

.vta-homepage a {
	text-decoration: none;
}

.vta-homepage h1,
.vta-homepage h2,
.vta-homepage h3,
.vta-homepage h4,
.vta-homepage p {
	color: inherit;
	font-family: var(--vta-font);
}

.vta-homepage__space {
	position: fixed;
	inset: 0;
	z-index: 0;
	display: block;
	pointer-events: none;
}

/* Nebula atmos layer removed per client request (2026-06-10): pure black field. */
.vta-homepage__vignette {
	position: fixed;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.vta-homepage__vignette {
	background: radial-gradient(120% 90% at 50% 30%, transparent 55%, rgba(4, 6, 12, .7) 100%);
}

.vta-wrap {
	width: min(var(--vta-maxw), calc(100% - 48px));
	margin-inline: auto;
	container-type: inline-size;
}

.vta-anchor-alias {
	display: block;
	position: relative;
	top: -96px;
	height: 0;
	overflow: hidden;
}

.vta-eyebrow {
	font-family: var(--vta-latin);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--vta-cyan);
}

.vta-hero-stage,
.vta-block,
.vta-final {
	position: relative;
	z-index: 1;
}

body.vta-homepage-page .wp-site-blocks > footer.wp-block-template-part {
	position: relative;
	z-index: 3;
	margin-block-start: 0;
	background: #0a0e17;
	isolation: isolate;
}

body.vta-homepage-page .wp-site-blocks > footer.wp-block-template-part .vta-site-footer {
	position: relative;
	z-index: 1;
	box-shadow: 0 -1px 0 rgba(148, 163, 184, .14), 0 -28px 80px rgba(4, 6, 12, .38);
}

.vta-homepage--scrub .vta-hero-stage {
	height: 260svh;
}

.vta-stagepin {
	position: relative;
}

.vta-homepage--scrub .vta-stagepin {
	position: sticky;
	top: 0;
	height: 100svh;
	overflow: hidden;
	display: grid;
	isolation: isolate;
}

.vta-hero {
	min-height: 100svh;
	display: grid;
	place-items: center;
	text-align: center;
	padding: 120px 24px 80px;
}

.vta-homepage--scrub .vta-hero {
	position: relative;
	grid-area: 1 / 1;
	min-height: 0;
	height: 100%;
}

.vta-hero__inner {
	width: min(940px, calc(100vw - 48px));
	max-width: 100%;
	opacity: 0;
	transform: translateY(18px);
	animation: vta-rise 1.1s .15s cubic-bezier(.2, .7, .2, 1) forwards;
}

.vta-hero .vta-eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	color: #66e4dd;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	text-shadow: 0 0 22px rgba(102, 228, 221, .24);
	opacity: 0;
	animation: vta-rise .8s .05s forwards;
}

.vta-hero .vta-eyebrow::before,
.vta-hero .vta-eyebrow::after {
	content: "";
	width: 46px;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(102, 228, 221, .72), transparent);
}

.vta-hero__kicker {
	margin: 32px auto 0;
	font-family: var(--vta-latin);
	font-size: clamp(1.75rem, 1.24rem + 1.96vw, 2.375rem);
	font-weight: 500;
	line-height: 1.12;
	text-transform: uppercase;
	background: linear-gradient(95deg, #64e4e4 0%, #6eb6ff 42%, #8170ff 72%, #dcd8ff 100%);
	background-clip: text;
	color: transparent;
	filter: drop-shadow(0 0 18px rgba(100, 228, 228, .18));
}

.vta-hero h1 {
	margin: 24px auto 0;
	color: #fbfcff;
	font-size: var(--vta-fluid-hero);
	font-weight: 900;
	line-height: 1.06;
	letter-spacing: 0;
	text-shadow:
		0 2px 0 rgba(255, 255, 255, .10),
		0 0 42px rgba(116, 134, 255, .20);
}

.vta-hero__heading-line {
	display: block;
	white-space: nowrap;
}

@media (min-width: 641px) {
	.vta-hero h1 {
		transform: translateY(-1px);
	}
}

.vta-grad {
	background: linear-gradient(100deg, var(--vta-cyan), var(--vta-cta-2) 55%, var(--vta-violet));
	background-clip: text;
	color: transparent;
	filter: drop-shadow(0 0 24px rgba(91, 192, 190, .25));
}

.vta-hero .vta-grad {
	background: linear-gradient(98deg, #5bdfe5 0%, #5baeff 42%, #7163ff 70%, #8658ff 100%);
	background-clip: text;
	filter:
		drop-shadow(0 0 26px rgba(91, 223, 229, .26))
		drop-shadow(0 0 34px rgba(113, 99, 255, .18));
}

.vta-homepage .vta-hero__lede {
	margin: 30px auto 0;
	max-width: 760px;
	color: #bcc3d4;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.8;
	text-shadow: 0 0 24px rgba(188, 195, 212, .10);
}

.vta-cta-row {
	display: flex;
	gap: 28px;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 36px;
}

.vta-btn {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 52px;
	padding: 14px 30px;
	border-radius: 999px;
	font-family: var(--vta-font);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
	color: var(--vta-text);
	cursor: pointer;
	pointer-events: auto;
	transition: transform .25s, box-shadow .35s, background .25s, border-color .25s;
}

.vta-btn:focus-visible,
.vta-dock__login:focus-visible,
.vta-article:focus-visible {
	outline: 2px solid var(--vta-cyan);
	outline-offset: 4px;
}

.vta-btn--primary {
	background: linear-gradient(180deg, var(--vta-cta-2), var(--vta-cta));
	color: var(--vta-text);
	box-shadow: 0 10px 34px -8px var(--vta-glow-cta), inset 0 1px 0 rgba(255, 255, 255, .25);
}

.vta-hero .vta-btn {
	min-width: 236px;
	min-height: 66px;
	padding: 18px 34px;
	font-size: 20px;
	font-weight: 800;
}

.vta-homepage .vta-btn--primary,
.vta-homepage .vta-btn--primary:visited,
.vta-homepage .vta-btn--primary:hover,
.vta-homepage .vta-btn--primary:focus-visible,
.vta-homepage .vta-btn--primary:active {
	color: var(--vta-text);
}

.vta-homepage .vta-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 44px -8px var(--vta-glow-cta);
}

.vta-btn--ghost {
	color: var(--vta-text);
	border: 1px solid var(--vta-line);
	background: rgba(255, 255, 255, .02);
}

.vta-homepage .vta-btn--ghost,
.vta-homepage .vta-btn--ghost:visited,
.vta-homepage .vta-btn--ghost:hover,
.vta-homepage .vta-btn--ghost:focus-visible,
.vta-homepage .vta-btn--ghost:active {
	color: var(--vta-text);
}

.vta-homepage .vta-btn--ghost:hover {
	transform: translateY(-2px);
	border-color: var(--vta-cyan);
	box-shadow: 0 0 0 1px var(--vta-glow-cyan);
}

.vta-scrollcue {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	display: none;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	font-family: var(--vta-latin);
	font-size: 11px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--vta-muted-2);
	opacity: 0;
	animation: vta-rise 1s 1s forwards;
}

.vta-scrollcue__line {
	width: 1px;
	height: 46px;
	background: linear-gradient(var(--vta-cyan), transparent);
	animation: vta-cue 2.4s infinite;
}

@keyframes vta-cue {
	0% { opacity: .2; transform: scaleY(.4); transform-origin: top; }
	50% { opacity: 1; }
	100% { opacity: .2; transform: scaleY(1); }
}

@keyframes vta-rise {
	to { opacity: 1; transform: none; }
}

.vta-why-layer {
	padding: clamp(80px, 11vh, 140px) 0;
}

.vta-homepage--scrub .vta-why-layer {
	position: relative;
	grid-area: 1 / 1;
	display: grid;
	place-items: center;
	min-height: 100%;
	padding: 90px 24px;
	opacity: 0;
	transform: scale(.62);
	transform-origin: 50% 46%;
	pointer-events: none;
	will-change: transform, opacity;
}

.vta-homepage--scrub .vta-scrollcue {
	position: relative;
	grid-area: 1 / 1;
	align-self: end;
	justify-self: center;
	bottom: auto;
	left: auto;
	transform: none;
	margin-bottom: 30px;
}

.vta-block {
	padding: clamp(80px, 11vh, 140px) 0;
}

.vta-reveal {
	opacity: 1;
	transform: none;
	transition: opacity .9s cubic-bezier(.2, .7, .2, 1), transform .9s cubic-bezier(.2, .7, .2, 1);
}

.vta-reveals-ready .vta-reveal:not(.in) {
	opacity: 0;
	transform: translateY(40px);
}

.vta-reveal.in {
	opacity: 1;
	transform: none;
}

.vta-reveal.d1 { transition-delay: .08s; }
.vta-reveal.d2 { transition-delay: .16s; }
.vta-reveal.d3 { transition-delay: .24s; }
.vta-reveal.d4 { transition-delay: .32s; }

.vta-section-title {
	margin: 14px 0 0;
	font-size: var(--vta-fluid-section);
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: 0;
}

.vta-homepage .vta-section-sub {
	max-width: 560px;
	margin: 14px 0 0;
	color: var(--vta-readable);
	font-size: 17px;
	font-weight: 300;
}

.vta-section-intro {
	text-align: center;
}

.vta-statement {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 56px;
	align-items: center;
}

.vta-statement__big {
	margin: 18px 0 0;
	font-size: var(--vta-fluid-statement);
	font-weight: 900;
	line-height: 1.18;
	letter-spacing: 0;
}

.vta-statement__big em {
	color: var(--vta-cyan);
	font-style: normal;
}

.vta-statement__points {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.vta-point {
	border-top: 1px solid var(--vta-line);
	padding-top: 16px;
}

.vta-point__number {
	font-family: var(--vta-latin);
	font-size: 13px;
	font-weight: 700;
	color: var(--vta-cta-2);
	letter-spacing: 0;
}

.vta-point h4 {
	margin: 6px 0 4px;
	font-size: clamp(1rem, .94rem + .28vw, 1.125rem);
	font-weight: 700;
}

.vta-point p,
.vta-module-row p,
.vta-step p,
.vta-instructor p {
	margin: 0;
	color: var(--vta-readable);
	font-size: 14px;
	font-weight: 400;
	text-shadow: 0 1px 18px rgba(0, 0, 0, .42);
}

.vta-modules {
	margin-top: 40px;
}

.vta-module-row {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 30px;
	align-items: center;
	padding: 30px 0;
	border-bottom: 1px solid var(--vta-line-soft);
}

.vta-module-row.is-reversed {
	grid-template-columns: 1fr auto;
	text-align: right;
}

.vta-module-row.is-reversed .vta-module-row__number {
	order: 2;
}

.vta-module-row__number {
	font-family: var(--vta-latin);
	font-size: var(--vta-fluid-module-number);
	font-weight: 900;
	line-height: .8;
	letter-spacing: 0;
	background: linear-gradient(180deg, var(--vta-text), rgba(148, 166, 191, .25));
	background-clip: text;
	color: transparent;
}

.vta-module-row h3 {
	margin: 0;
	font-size: var(--vta-fluid-module-title);
	font-weight: 700;
}

.vta-module-row p {
	max-width: 560px;
	margin-top: 8px;
}

.vta-module-row.is-reversed p {
	margin-left: auto;
}

.vta-path {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	position: relative;
	margin-top: 50px;
}

.vta-path::before {
	content: "";
	position: absolute;
	top: 26px;
	left: 6%;
	right: 6%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--vta-violet), var(--vta-cyan), transparent);
}

.vta-step {
	position: relative;
	text-align: center;
	padding: 0 6px;
}

.vta-step__dot {
	width: 54px;
	height: 54px;
	margin: 0 auto 18px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-family: var(--vta-latin);
	font-weight: 900;
	background: radial-gradient(circle at 30% 30%, var(--vta-surface-2), var(--vta-ink-2));
	border: 1px solid var(--vta-line);
	color: var(--vta-cyan);
	position: relative;
	z-index: 1;
	box-shadow: 0 0 0 6px rgba(10, 14, 23, .9), 0 0 30px -8px var(--vta-glow-cyan);
}

.vta-step h4 {
	margin: 0;
	font-size: clamp(1rem, .94rem + .28vw, 1.125rem);
	font-weight: 700;
}

.vta-step p {
	margin-top: 5px;
	font-size: 13px;
}

.vta-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px;
	align-items: center;
}

.vta-community__button {
	margin-top: 26px;
}

.vta-discord-card {
	border: 1px solid var(--vta-line);
	border-radius: 20px;
	padding: 34px;
	background: linear-gradient(160deg, rgba(124, 77, 255, .12), rgba(91, 192, 190, .06));
	position: relative;
	overflow: hidden;
	container-type: inline-size;
}

.vta-discord-card__row {
	display: grid;
	grid-template-columns: 1fr;
	align-items: start;
	gap: 7px;
	position: relative;
	z-index: 1;
	padding: 15px 0;
	border-bottom: 1px solid var(--vta-line-soft);
}

.vta-discord-card__row:last-child {
	border-bottom: 0;
}

.vta-discord-card__tag {
	justify-self: start;
	font-family: var(--vta-latin);
	font-size: 11px;
	letter-spacing: 0;
	color: var(--vta-cyan);
	border: 1px solid var(--vta-line);
	border-radius: 999px;
	padding: 3px 10px;
	white-space: nowrap;
}

.vta-discord-card__text {
	color: var(--vta-readable);
	line-height: 1.75;
}

.vta-plans-section .vta-section-sub {
	margin-inline: auto;
	max-width: 660px;
}

.vta-plans {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch;
	margin-top: 46px;
}

.vta-plan {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: clamp(22px, 3vw, 30px);
	border: 1px solid var(--vta-line);
	border-radius: 18px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .015)),
		linear-gradient(180deg, var(--vta-surface), var(--vta-ink-2));
	box-shadow: 0 18px 58px -42px rgba(0, 0, 0, .9);
	overflow: hidden;
}

.vta-plan::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: radial-gradient(circle at 50% 0%, rgba(91, 192, 190, .14), transparent 42%);
	opacity: .55;
	pointer-events: none;
}

.vta-plan.is-featured {
	border-color: color-mix(in srgb, var(--vta-cta-2) 72%, transparent);
	box-shadow: 0 26px 80px -36px var(--vta-glow-cta);
}

.vta-plan.is-featured::before {
	background:
		radial-gradient(circle at 50% 0%, rgba(91, 192, 190, .18), transparent 42%),
		radial-gradient(circle at 88% 12%, rgba(124, 77, 255, .18), transparent 38%);
	opacity: .85;
}

.vta-plan > * {
	position: relative;
	z-index: 1;
}

.vta-plan__badge {
	align-self: flex-start;
	margin-bottom: 18px;
	padding: 4px 11px;
	border: 1px solid color-mix(in srgb, var(--vta-cyan) 48%, transparent);
	border-radius: 999px;
	color: var(--vta-cyan);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0;
}

.vta-plan__head h3 {
	margin: 0;
	color: var(--vta-text);
	font-size: var(--vta-fluid-card-title);
	line-height: 1.2;
	letter-spacing: 0;
}

.vta-plan__head p,
.vta-plan__description {
	margin: 12px 0 0;
	color: var(--vta-muted);
	font-size: 14px;
	line-height: 1.75;
}

.vta-plan__features {
	display: grid;
	gap: 10px;
	margin: 24px 0 28px;
	padding: 0;
	list-style: none;
	color: var(--vta-muted);
	font-size: 13.5px;
	line-height: 1.65;
}

.vta-plan__features li {
	position: relative;
	padding-left: 20px;
}

.vta-plan__features li::before {
	content: "";
	position: absolute;
	top: .72em;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--vta-cyan);
	box-shadow: 0 0 16px rgba(91, 192, 190, .42);
	transform: translateY(-50%);
}

.vta-plan__footer {
	display: flex;
	flex-direction: column;
	gap: 18px;
	margin-top: auto;
	padding-top: 24px;
	border-top: 1px solid var(--vta-line-soft);
}

.vta-plan__price {
	display: grid;
	gap: 4px;
}

.vta-plan__price del {
	color: var(--vta-muted-2);
	font-size: 13px;
	text-decoration-color: color-mix(in srgb, var(--vta-muted-2) 70%, transparent);
}

.vta-plan__price strong {
	color: var(--vta-text);
	font-family: var(--vta-latin);
	font-size: clamp(25px, 3vw, 34px);
	font-weight: 900;
	line-height: 1;
}

.vta-plan__cta {
	justify-content: center;
	width: 100%;
	text-align: center;
}

.vta-instructors {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	align-items: stretch;
	margin-top: 48px;
}

.vta-instructor {
	display: flex;
	flex-direction: column;
	height: 100%;
	border: 1px solid var(--vta-line);
	border-radius: 18px;
	overflow: hidden;
	background: linear-gradient(180deg, var(--vta-surface), var(--vta-ink-2));
	color: inherit;
	transition: transform .4s, border-color .4s, box-shadow .4s;
}

a.vta-instructor:focus-visible {
	outline: 2px solid var(--vta-cyan);
	outline-offset: 4px;
}

.vta-instructor:hover {
	transform: translateY(-6px);
	border-color: var(--vta-cta-2);
	box-shadow: 0 24px 60px -22px var(--vta-glow-cta);
}

.vta-instructor__face {
	aspect-ratio: 4 / 5;
	background:
		radial-gradient(circle at 50% 38%, rgba(91, 192, 190, .18), transparent 60%),
		linear-gradient(160deg, var(--vta-surface-2), var(--vta-ink-2));
	display: grid;
	place-items: center;
	color: var(--vta-muted-2);
	font-family: var(--vta-latin);
	font-size: 12px;
	letter-spacing: 0;
}

.vta-instructor__meta {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 18px;
}

.vta-instructor__name {
	font-weight: 700;
	font-size: clamp(1.125rem, 1.02rem + .46vw, 1.375rem);
}

.vta-instructor__role {
	color: var(--vta-cyan);
	font-size: 13px;
	font-family: var(--vta-latin);
	letter-spacing: 0;
	margin-top: 2px;
}

.vta-instructor p {
	margin-top: 10px;
	font-size: 13px;
}

.vta-feedback .vta-section-sub {
	margin-inline: auto;
	max-width: 640px;
}

.vta-fb-rows {
	margin-top: 50px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.vta-fb-marquee {
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.vta-fb-track {
	display: flex;
	width: max-content;
	animation: vta-fb-scroll 58s linear infinite;
}

.vta-fb-set {
	display: flex;
	gap: 18px;
	padding-right: 18px;
	flex: none;
}

.vta-fb-marquee--rev .vta-fb-track {
	animation-duration: 47s;
	animation-direction: reverse;
}

.vta-fb-marquee:hover .vta-fb-track {
	animation-play-state: paused;
}

@keyframes vta-fb-scroll {
	to {
		transform: translateX(-25%);
	}
}

.vta-fb-card {
	width: min(300px, 74vw);
	aspect-ratio: 1;
	flex: none;
	margin: 0;
	border-radius: 16px;
	overflow: hidden;
	border: 1px solid var(--vta-line-soft);
	background: var(--vta-ink-2);
	cursor: zoom-in;
	transition: border-color .35s, transform .35s;
}

.vta-fb-card:hover {
	border-color: var(--vta-cta-2);
	transform: translateY(-4px);
}

.vta-fb-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.vta-fb-note {
	color: var(--vta-muted-2);
	font-size: 12.5px;
	font-weight: 300;
	text-align: center;
	margin-top: 28px;
}

.vta-fb-lightbox {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
	place-items: center;
	padding: 24px;
	background: rgba(4, 6, 12, .9);
	cursor: zoom-out;
}

.vta-fb-lightbox.open {
	display: grid;
}

.vta-fb-lightbox img {
	max-width: min(580px, 92vw);
	max-height: 86vh;
	border-radius: 16px;
	border: 1px solid var(--vta-line);
}

.vta-articles {
	margin-top: 40px;
	border-top: 1px solid var(--vta-line);
}

.vta-article {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 26px;
	align-items: center;
	padding: 24px 6px;
	border-bottom: 1px solid var(--vta-line-soft);
	transition: background .3s, padding-left .3s;
	color: inherit;
}

.vta-article:hover {
	background: rgba(91, 95, 255, .05);
	padding-left: 18px;
}

.vta-article__idx {
	font-family: var(--vta-latin);
	font-weight: 700;
	color: var(--vta-muted-2);
	font-size: 14px;
}

.vta-article h4 {
	margin: 0;
	font-size: clamp(1.25rem, 1.08rem + .76vw, 1.625rem);
	font-weight: 500;
}

.vta-article__go {
	color: var(--vta-cyan);
	font-family: var(--vta-latin);
	font-size: 13px;
	letter-spacing: 0;
	opacity: 0;
	transition: opacity .3s;
}

.vta-article:hover .vta-article__go {
	opacity: 1;
}

.vta-final {
	text-align: center;
	padding: clamp(110px, 16vh, 180px) 0;
}

.vta-final .vta-eyebrow {
	display: inline-block;
}

.vta-final h2 {
	margin: 16px 0 0;
	font-size: var(--vta-fluid-final);
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: 0;
}

.vta-homepage .vta-final__lede {
	color: var(--vta-readable);
	font-weight: 300;
	margin: 20px auto 0;
	max-width: 520px;
}

.vta-dock {
	position: fixed;
	left: 50%;
	bottom: 18px;
	z-index: 40;
	width: min(1100px, calc(100% - 40px));
	transform: translateX(-50%) translateY(160%);
	opacity: 0;
	pointer-events: none;
	transition: transform .65s cubic-bezier(.2, .85, .25, 1), opacity .5s ease;
}

.vta-dock.show {
	transform: translateX(-50%) translateY(0);
	opacity: 1;
	pointer-events: auto;
}

.vta-dock__inner {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 14px 16px 14px 24px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(26, 35, 62, .55), rgba(10, 14, 23, .66));
	-webkit-backdrop-filter: blur(26px) saturate(180%);
	backdrop-filter: blur(26px) saturate(180%);
	box-shadow: 0 26px 70px -22px rgba(0, 0, 0, .8), 0 2px 10px -5px rgba(0, 0, 0, .5), inset 0 0 42px rgba(91, 95, 255, .10);
	transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease;
}

.vta-dock:hover .vta-dock__inner {
	transform: translateY(-2px);
	box-shadow: 0 32px 84px -22px rgba(0, 0, 0, .85), inset 0 0 54px rgba(91, 95, 255, .18);
}

.vta-dock__inner::before,
.vta-dock__inner::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	z-index: 0;
}

.vta-dock__inner::before {
	background: linear-gradient(180deg, rgba(255, 255, 255, .16), rgba(255, 255, 255, 0) 38%);
}

.vta-dock__inner::after {
	padding: 1px;
	background: linear-gradient(140deg, rgba(255, 255, 255, .5), rgba(255, 255, 255, .06) 34%, rgba(124, 109, 255, .20) 68%, rgba(91, 192, 190, .34));
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	mask-composite: exclude;
}

.vta-dock__message {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 11px;
	font-weight: 500;
	color: var(--vta-text);
	font-size: 15px;
	letter-spacing: 0;
	white-space: nowrap;
}

.vta-dock__message::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	flex: none;
	background: var(--vta-cyan);
	box-shadow: 0 0 10px 1px rgba(91, 192, 190, .7);
	animation: vta-dockpulse 2.6s ease-in-out infinite;
}

@keyframes vta-dockpulse {
	0%, 100% { opacity: .5; transform: scale(.82); }
	50% { opacity: 1; transform: scale(1.18); }
}

.vta-dock__actions {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
	pointer-events: auto;
}

.vta-dock__button {
	position: relative;
	z-index: 3;
	overflow: hidden;
	min-height: 46px;
	padding: 11px 24px;
	font-size: 14px;
	box-shadow: 0 8px 24px -8px var(--vta-glow-cta), inset 0 1px 0 rgba(255, 255, 255, .3);
}

.vta-dock__button::after {
	content: "";
	position: absolute;
	top: 0;
	left: -65%;
	width: 55%;
	height: 100%;
	transform: skewX(-18deg);
	pointer-events: none;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .4), transparent);
	transition: left .6s ease;
}

.vta-dock__button:hover::after {
	left: 135%;
}

.vta-dock__login {
	position: relative;
	z-index: 1;
	color: var(--vta-muted);
	font-weight: 600;
	font-size: 14px;
	padding: 10px 14px;
	border-radius: 999px;
	white-space: nowrap;
	transition: color .25s, background .25s;
}

.vta-dock__login:hover {
	color: var(--vta-text);
	background: rgba(255, 255, 255, .06);
}

@media (max-width: 1100px) {
	.vta-hero h1 {
		font-size: var(--vta-fluid-hero);
	}

	.vta-statement__big {
		font-size: var(--vta-fluid-statement);
	}

	.vta-module-row__number {
		font-size: var(--vta-fluid-module-number);
	}
}

@media (max-width: 820px) {
	.vta-homepage--scrub .vta-hero-stage {
		height: 200svh;
	}

	.vta-statement,
	.vta-split {
		grid-template-columns: 1fr;
		gap: 34px;
		align-items: start;
	}

	.vta-path {
		grid-template-columns: 1fr 1fr;
		gap: 34px 16px;
	}

	.vta-path::before {
		display: none;
	}

	.vta-plans {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.vta-instructors {
		grid-template-columns: 1fr;
		gap: 18px;
	}
}

@media (max-width: 680px) {
	.vta-module-row,
	.vta-module-row.is-reversed {
		grid-template-columns: 1fr;
		text-align: left;
		gap: 8px;
	}

	.vta-module-row.is-reversed .vta-module-row__number {
		order: -1;
	}

	.vta-module-row.is-reversed p {
		margin-left: 0;
	}

	.vta-article__go {
		display: none;
	}
}

@media (max-width: 640px) {
	.vta-wrap {
		width: min(var(--vta-maxw), calc(100% - 44px));
	}

	.vta-hero {
		padding: 92px 22px 88px;
	}

	.vta-hero__inner {
		width: 100%;
		max-width: none;
	}

	.vta-hero h1 {
		font-size: clamp(2.125rem, 1.58rem + 2.42vw, 2.875rem);
		line-height: 1.1;
	}

	.vta-homepage .vta-hero__lede {
		font-size: 15.5px;
		line-height: 1.75;
		margin-top: 18px;
		max-width: none;
	}

	.vta-hero .vta-eyebrow {
		gap: 12px;
		font-size: 13px;
		letter-spacing: 0;
	}

	.vta-hero .vta-eyebrow::before,
	.vta-hero .vta-eyebrow::after {
		width: 28px;
	}

	.vta-hero__kicker {
		margin-top: 22px;
		font-size: clamp(1rem, .86rem + .62vw, 1.2rem);
	}

	.vta-hero .vta-cta-row {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		width: 100%;
		max-width: 326px;
		margin: 30px auto 0;
	}

	.vta-hero .vta-btn {
		width: 100%;
		min-width: 0;
		min-height: 56px;
		padding: 15px 24px;
		font-size: 16px;
	}

	.vta-why-layer .vta-statement {
		gap: 24px;
	}

	.vta-statement__big {
		font-size: clamp(1.75rem, 1.4rem + 1.54vw, 2.25rem);
		line-height: 1.25;
	}

	.vta-point {
		padding-top: 13px;
	}

	.vta-point h4 {
		font-size: clamp(1rem, .9rem + .44vw, 1.125rem);
	}

	.vta-point p {
		font-size: 13px;
	}

	.vta-homepage--scrub .vta-why-layer {
		padding: 76px 22px;
	}

	.vta-section-title {
		font-size: clamp(1.875rem, 1.44rem + 1.92vw, 2.5rem);
	}

	.vta-module-row__number {
		font-size: clamp(4rem, 3.48rem + 2.32vw, 4.75rem);
	}

	.vta-final h2 {
		font-size: clamp(2.25rem, 1.82rem + 1.92vw, 2.875rem);
	}

	.vta-dock {
		bottom: 12px;
		width: calc(100% - 22px);
	}

	.vta-dock__inner {
		padding: 9px 10px 9px 16px;
		border-radius: 18px;
		gap: 10px;
	}

	.vta-dock__message {
		display: none;
	}

	.vta-dock__actions {
		flex: 1;
		justify-content: space-between;
		gap: 8px;
	}

	.vta-dock__button {
		flex: 1;
		padding: 12px 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.vta-homepage--scrub .vta-hero-stage {
		height: auto;
	}

	.vta-homepage--scrub .vta-stagepin {
		position: relative;
		height: auto;
	}

	.vta-homepage--scrub .vta-hero {
		position: relative;
	}

	.vta-homepage--scrub .vta-why-layer {
		position: relative;
		opacity: 1;
		transform: none;
	}

	.vta-hero__inner,
	.vta-hero .vta-eyebrow,
	.vta-scrollcue,
	.vta-reveal {
		animation: none;
		transition: none;
		opacity: 1;
		transform: none;
	}

	.vta-scrollcue__line,
	.vta-dock__message::before {
		animation: none;
	}

	.vta-fb-track,
	.vta-fb-marquee--rev .vta-fb-track {
		animation: none;
	}

	.vta-fb-marquee {
		overflow-x: auto;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.vta-dock {
		transition: opacity .3s ease;
	}

	.vta-dock,
	.vta-dock.show {
		transform: translateX(-50%);
	}
}
