.pa-home-preview {
	background: #05070b;
	color: rgba(255, 255, 255, 0.82);
	font-family: var(--pa-font-body);
}

.pa-home-preview h1,
.pa-home-preview h2,
.pa-home-preview h3 {
	color: #fff8e6;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 600;
	letter-spacing: 0;
}

.pa-kicker {
	color: var(--pa-color-gold-500);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0;
	margin: 0 0 var(--pa-space-sm);
	text-transform: uppercase;
}

.pa-cinematic-hero {
	background:
		linear-gradient(90deg, rgba(5, 7, 11, 0.98) 0%, rgba(8, 16, 29, 0.92) 48%, rgba(5, 7, 11, 0.98) 100%),
		radial-gradient(circle at 76% 28%, rgba(212, 175, 90, 0.2), transparent 21rem),
		radial-gradient(circle at 20% 18%, rgba(76, 66, 180, 0.28), transparent 24rem),
		#05070b;
	min-height: 86svh;
	overflow: hidden;
	position: relative;
}

.pa-cinematic-hero::after {
	background: linear-gradient(180deg, rgba(5, 7, 11, 0) 0%, #05070b 100%);
	bottom: 0;
	content: "";
	height: 28%;
	left: 0;
	position: absolute;
	right: 0;
}

.pa-cinematic-hero__light {
	background:
		radial-gradient(circle at 70% 20%, rgba(212, 175, 90, 0.34), transparent 24rem),
		radial-gradient(circle at 18% 30%, rgba(78, 88, 192, 0.32), transparent 26rem);
	inset: 0;
	position: absolute;
}

.pa-cinematic-hero__inner {
	min-height: 86svh;
	padding-block: clamp(1.5rem, 4vw, 3rem);
	position: relative;
	z-index: 1;
}

.pa-brand-lockup {
	align-items: center;
	display: flex;
	gap: var(--pa-space-md);
	margin-block-end: clamp(2.8rem, 6vw, 5rem);
}

.pa-brand-lockup__avatar {
	border: 1px solid rgba(212, 175, 90, 0.75);
	border-radius: 999px;
	height: 64px;
	width: 64px;
}

.pa-brand-lockup__name {
	color: var(--pa-color-gold-500);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.45rem, 3vw, 2.35rem);
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.pa-brand-lockup__tagline {
	color: rgba(255, 255, 255, 0.82);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(0.78rem, 1vw, 0.95rem);
	margin: var(--pa-space-xs) 0 0;
	text-transform: uppercase;
}

.pa-cinematic-hero__grid {
	align-items: center;
	display: grid;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: minmax(0, 0.92fr) minmax(280px, 0.58fr);
}

.pa-cinematic-hero__copy {
	max-width: 680px;
}

.pa-cinematic-hero h1 {
	font-size: clamp(2.45rem, 5.3vw, 5.4rem);
	line-height: 1;
	margin-block-end: var(--pa-space-lg);
	max-width: 760px;
}

.pa-cinematic-hero__lead {
	color: rgba(255, 255, 255, 0.76);
	font-size: clamp(1rem, 1.45vw, 1.2rem);
	line-height: 1.65;
	max-width: 580px;
}

.pa-home-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-md);
	margin-block-start: var(--pa-space-xl);
}

.pa-button--gold {
	background: linear-gradient(135deg, #f0d68c, var(--pa-color-gold-600));
	border-color: rgba(240, 214, 140, 0.7);
	color: #071426;
}

.pa-button--glass {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.24);
	color: #fff8e6;
}

.pa-button--glass:hover,
.pa-button--glass:focus {
	background: rgba(255, 255, 255, 0.12);
	color: #fff8e6;
}

.pa-hero-emblem {
	aspect-ratio: 1;
	border: 1px solid rgba(212, 175, 90, 0.52);
	border-radius: 999px;
	box-shadow: 0 32px 120px rgba(0, 0, 0, 0.48);
	display: grid;
	isolation: isolate;
	margin-inline-start: auto;
	max-width: 340px;
	overflow: hidden;
	place-items: center;
	position: relative;
	width: 100%;
}

.pa-hero-emblem::before {
	background:
		radial-gradient(circle at 50% 34%, rgba(212, 175, 90, 0.16), transparent 13rem),
		linear-gradient(140deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.01));
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.pa-hero-emblem img {
	border: 1px solid rgba(212, 175, 90, 0.72);
	border-radius: 999px;
	display: block;
	max-width: 56%;
	position: relative;
	z-index: 1;
}

.pa-piano-mark {
	background: rgba(255, 255, 255, 0.92);
	border: 2px solid rgba(255, 255, 255, 0.75);
	border-radius: var(--pa-radius-sm);
	bottom: 13%;
	display: grid;
	gap: 4px;
	grid-template-columns: repeat(5, 1fr);
	height: 54px;
	padding: 8px;
	position: absolute;
	right: 10%;
	transform: rotate(-8deg);
	width: 108px;
}

.pa-piano-mark span {
	background: #0a0e17;
	border-radius: 0 0 4px 4px;
	display: block;
	height: 78%;
}

.pa-editorial-section,
.pa-platform-flow,
.pa-author-scene,
.pa-courses-showcase,
.pa-final-scene {
	background:
		radial-gradient(circle at 82% 4%, rgba(212, 175, 90, 0.1), transparent 22rem),
		#05070b;
	padding-block: clamp(4rem, 7vw, 6.5rem);
}

.pa-section-intro {
	max-width: 760px;
}

.pa-section-intro--center {
	margin-inline: auto;
	text-align: center;
}

.pa-section-intro h2,
.pa-author-scene h2,
.pa-final-scene h2 {
	font-size: clamp(1.85rem, 3.8vw, 3.85rem);
	line-height: 1.08;
	margin: 0;
}

.pa-path-stack {
	border-top: 1px solid rgba(212, 175, 90, 0.24);
	margin-block-start: var(--pa-space-2xl);
}

.pa-path-row {
	align-items: start;
	border-bottom: 1px solid rgba(212, 175, 90, 0.18);
	display: grid;
	gap: var(--pa-space-xl);
	grid-template-columns: 80px minmax(220px, 0.5fr) minmax(0, 0.75fr);
	padding-block: clamp(1.35rem, 3vw, 2.2rem);
}

.pa-path-row span {
	color: rgba(212, 175, 90, 0.75);
	font-weight: 800;
}

.pa-path-row h3 {
	font-size: clamp(1.25rem, 2vw, 1.85rem);
	margin: 0;
}

.pa-path-row p {
	color: rgba(255, 255, 255, 0.66);
	font-size: var(--pa-text-base);
	line-height: 1.75;
	margin: 0;
}

.pa-premium-course-grid {
	display: grid;
	gap: var(--pa-space-lg);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-block-start: var(--pa-space-2xl);
}

.pa-premium-course {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025));
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--pa-radius-md);
	min-height: 300px;
	padding: var(--pa-space-xl);
}

.pa-premium-course--featured {
	background:
		radial-gradient(circle at 24% 18%, rgba(212, 175, 90, 0.22), transparent 12rem),
		linear-gradient(180deg, rgba(212, 175, 90, 0.14), rgba(255, 255, 255, 0.035));
	border-color: rgba(212, 175, 90, 0.55);
}

.pa-premium-course p,
.pa-premium-course span {
	color: rgba(255, 255, 255, 0.66);
	font-size: var(--pa-text-sm);
	margin: 0;
}

.pa-premium-course h3 {
	font-size: clamp(1.45rem, 2.3vw, 2.2rem);
	margin-block: 5.5rem var(--pa-space-md);
}

.pa-platform-flow__grid,
.pa-author-scene__grid {
	align-items: center;
	display: grid;
	gap: clamp(2rem, 6vw, 5rem);
	grid-template-columns: minmax(0, 0.85fr) minmax(320px, 0.7fr);
}

.pa-flow-list {
	display: grid;
	gap: var(--pa-space-lg);
}

.pa-flow-list div {
	border-left: 1px solid rgba(212, 175, 90, 0.45);
	padding-left: var(--pa-space-lg);
}

.pa-flow-list strong {
	color: var(--pa-color-gold-500);
	display: block;
	margin-block-end: var(--pa-space-xs);
}

.pa-flow-list span,
.pa-author-scene p {
	color: rgba(255, 255, 255, 0.68);
	font-size: var(--pa-text-base);
	line-height: 1.75;
}

.pa-author-scene__image {
	margin: 0;
}

.pa-author-scene__image img {
	border: 1px solid rgba(212, 175, 90, 0.65);
	border-radius: 999px;
	display: block;
	margin-inline: auto;
	max-width: 300px;
	width: 100%;
}

.pa-final-scene {
	text-align: center;
}

.pa-final-scene .pa-button {
	margin-block-start: var(--pa-space-xl);
}

.pa-final-lockup {
	align-items: center;
	display: inline-flex;
	flex-direction: column;
	gap: var(--pa-space-md);
	margin-block-end: var(--pa-space-2xl);
}

.pa-final-lockup img {
	border: 1px solid rgba(212, 175, 90, 0.75);
	border-radius: 999px;
	display: block;
	height: 86px;
	width: 86px;
}

.pa-final-lockup p {
	color: var(--pa-color-gold-500);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.45rem, 3vw, 2.35rem);
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

@media (max-width: 900px) {
	.pa-cinematic-hero__grid,
	.pa-platform-flow__grid,
	.pa-author-scene__grid {
		grid-template-columns: 1fr;
	}

	.pa-hero-emblem {
		margin-inline: 0;
		max-width: 300px;
	}

	.pa-brand-lockup {
		margin-block-end: var(--pa-space-3xl);
	}

	.pa-path-row {
		grid-template-columns: 1fr;
	}

	.pa-premium-course-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.pa-cinematic-hero__inner {
		padding-block: var(--pa-space-xl) var(--pa-space-3xl);
	}

	.pa-brand-lockup {
		align-items: flex-start;
		flex-direction: column;
	}

	.pa-brand-lockup__avatar {
		height: 64px;
		width: 64px;
	}

	.pa-cinematic-hero h1 {
		font-size: clamp(2.25rem, 11vw, 3.45rem);
	}

	.pa-home-actions {
		align-items: stretch;
		flex-direction: column;
	}
}
