:root {
	--epc-primary: #0077d9;
	--epc-primary-deep: #003b83;
	--epc-secondary: #00c6d7;
	--epc-accent: #ffcf33;
	--epc-ink: #07172f;
	--epc-muted: #64748b;
	--epc-line: #d9e8f6;
	--epc-soft: #eef9ff;
	--epc-bg: #f5fbff;
	--epc-card: #ffffff;
	--epc-success: #16a34a;
	--epc-warning: #f59e0b;
	--epc-danger: #dc2626;
	--epc-radius: 16px;
	--epc-shadow: 0 18px 45px rgba(0, 61, 131, .12);
	--epc-font: "Cairo", "Tajawal", "Segoe UI", sans-serif;
}

body,
.epc-app {
	font-family: var(--epc-font);
}

.site-content .ast-container,
.page .site-content .ast-container,
.home .site-content .ast-container {
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}

.entry-content > .epc-home,
.entry-content > .epc-catalog {
	margin: -28px calc(50% - 50vw) 0;
}

.main-header-bar,
.ast-primary-header-bar {
	position: sticky;
	top: 0;
	z-index: 80;
	border-bottom: 1px solid rgba(217, 232, 246, .86);
	background: rgba(255, 255, 255, .9);
	backdrop-filter: blur(16px);
	box-shadow: 0 10px 30px rgba(4, 40, 89, .06);
}

.site-title a,
.main-header-menu .menu-link {
	color: var(--epc-ink);
	font-weight: 800;
}

.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link {
	color: var(--epc-primary);
}

.epc-app,
.epc-course-grid,
.epc-student-dashboard,
.epc-course-sales,
.epc-lesson-app {
	direction: rtl;
	color: var(--epc-ink);
}

.epc-app a,
.epc-btn {
	text-decoration: none;
}

.epc-btn,
.epc-course-box a,
.epc-complete-lesson-form button,
.epc-quiz-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border: 0;
	border-radius: 999px;
	padding: 12px 20px;
	background: linear-gradient(135deg, var(--epc-primary), var(--epc-secondary));
	color: #fff;
	font-weight: 800;
	box-shadow: 0 12px 26px rgba(0, 119, 217, .24);
	cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}

.epc-btn:hover,
.epc-course-box a:hover,
.epc-complete-lesson-form button:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 16px 34px rgba(0, 119, 217, .32);
}

.epc-btn--ghost {
	background: #fff;
	color: var(--epc-primary-deep);
	border: 1px solid var(--epc-line);
	box-shadow: none;
}

.epc-badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	padding: 6px 11px;
	background: #e8f7ff;
	color: var(--epc-primary-deep);
	font-size: 12px;
	font-weight: 800;
}

.epc-home,
.epc-catalog {
	overflow: hidden;
	background:
		radial-gradient(circle at 95% 4%, rgba(0, 198, 215, .16), transparent 24%),
		linear-gradient(180deg, #f8fcff 0%, #fff 34%, #f6fbff 100%);
}

.epc-home > section,
.epc-catalog > section,
.epc-catalog-filters,
.epc-catalog .epc-course-grid {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}

body:has(.epc-home) .entry-header,
body:has(.epc-catalog) .entry-header,
body:has(.epc-home) .post-thumb,
body:has(.epc-catalog) .post-thumb {
	display: none;
}

body:has(.epc-home) .site-header,
body:has(.epc-catalog) .site-header {
	display: none;
}

body:has(.epc-home) .site-content,
body:has(.epc-catalog) .site-content {
	background: #031c4a;
}

.epc-shell-nav {
	position: sticky;
	top: 12px;
	z-index: 70;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: min(1180px, calc(100% - 32px));
	margin: 0 auto -58px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 26px;
	background: rgba(2, 30, 78, .72);
	box-shadow: 0 22px 60px rgba(0, 24, 66, .24);
	backdrop-filter: blur(20px);
}

.epc-shell-brand,
.epc-shell-links,
.epc-shell-cta {
	color: #fff;
}

.epc-shell-brand {
	display: inline-grid;
	line-height: 1;
	text-decoration: none;
}

.epc-shell-brand span {
	color: #90eeff;
	font-size: 13px;
	font-weight: 900;
}

.epc-shell-brand strong {
	font-size: 22px;
	font-weight: 950;
}

.epc-shell-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(12px, 2vw, 26px);
}

.epc-shell-links a {
	color: rgba(255, 255, 255, .82);
	font-size: 14px;
	font-weight: 850;
	text-decoration: none;
}

.epc-shell-links a:hover {
	color: #fff;
}

.epc-shell-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	border-radius: 999px;
	background: linear-gradient(135deg, #19d7ff, #ffffff);
	color: #063272;
	font-weight: 950;
	text-decoration: none;
	box-shadow: 0 14px 36px rgba(25, 215, 255, .26);
}

body:has(.epc-home) .site-content .ast-container,
body:has(.epc-catalog) .site-content .ast-container {
	padding-top: 0;
}

.epc-home-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
	align-items: center;
	gap: clamp(28px, 5vw, 68px);
	position: relative;
	max-width: none !important;
	min-height: 760px;
	padding: clamp(120px, 12vw, 170px) max(24px, calc((100vw - 1200px) / 2)) clamp(70px, 8vw, 110px) !important;
	background:
		linear-gradient(90deg, rgba(3, 18, 56, .96) 0%, rgba(0, 55, 142, .88) 48%, rgba(0, 151, 216, .22) 100%),
		var(--epc-hero-art, none) center / cover no-repeat,
		radial-gradient(circle at 18% 18%, rgba(31, 218, 255, .34), transparent 24%),
		linear-gradient(135deg, #031c4a, #027bdc);
	padding-bottom: clamp(42px, 7vw, 80px);
	overflow: hidden;
}

.epc-home-hero::before,
.epc-home-hero::after {
	position: absolute;
	pointer-events: none;
	content: "";
}

.epc-home-hero::before {
	inset: 0;
	background:
		radial-gradient(circle at 14% 58%, rgba(255, 255, 255, .16), transparent 18%),
		linear-gradient(115deg, transparent 0 55%, rgba(255, 255, 255, .12) 55% 56%, transparent 56% 100%);
}

.epc-home-hero::after {
	right: -110px;
	bottom: -150px;
	width: 420px;
	height: 420px;
	border: 46px solid rgba(147, 235, 255, .22);
	border-radius: 50%;
}

.epc-home-hero__copy h1 {
	max-width: 760px;
	margin: 18px 0;
	color: #fff;
	font-size: clamp(42px, 7vw, 82px);
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1.04;
	text-shadow: 0 16px 48px rgba(0, 0, 0, .32);
}

.epc-home-hero__copy p {
	max-width: 650px;
	margin: 0;
	color: rgba(255, 255, 255, .86);
	font-size: clamp(17px, 2vw, 21px);
	line-height: 1.9;
}

.epc-home-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 28px 0 18px;
}

.epc-trust-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 16px;
	color: rgba(255, 255, 255, .88);
	font-weight: 800;
}

.epc-trust-row span::before {
	margin-left: 6px;
	color: #3df0ff;
	content: "✓";
}

.epc-home-hero__visual {
	position: relative;
	isolation: isolate;
}

.epc-home-hero__visual::before {
	position: absolute;
	inset: 11% -6% 13% 10%;
	z-index: -1;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 56px;
	background: linear-gradient(135deg, rgba(255, 255, 255, .23), rgba(0, 198, 215, .2));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 34px 90px rgba(0, 16, 58, .34);
	content: "";
	transform: rotate(-4deg);
}

.epc-home-hero__visual img {
	display: block;
	width: min(100%, 500px);
	margin-inline: auto;
	border: 10px solid #fff;
	border-radius: 48px;
	box-shadow: 0 36px 100px rgba(0, 10, 45, .5);
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center top;
}

.epc-floating-card {
	position: absolute;
	z-index: 2;
	padding: 11px 15px;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: 18px;
	background: rgba(255, 255, 255, .92);
	color: var(--epc-primary-deep);
	font-weight: 900;
	box-shadow: 0 18px 42px rgba(0, 54, 119, .14);
	backdrop-filter: blur(12px);
}

.epc-floating-card--one {
	top: 13%;
	right: -10px;
}

.epc-floating-card--two {
	bottom: 18%;
	left: -18px;
}

.epc-floating-card--three {
	right: 18px;
	bottom: 5%;
}

.epc-hero-mini-dashboard {
	position: absolute;
	right: 12%;
	bottom: -28px;
	z-index: 3;
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
	width: min(270px, 76%);
	padding: 16px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 24px;
	background: rgba(255, 255, 255, .1);
	color: #fff;
	box-shadow: 0 24px 60px rgba(0, 0, 0, .28);
	backdrop-filter: blur(18px);
}

.epc-hero-mini-dashboard strong {
	margin-bottom: 4px;
}

.epc-hero-mini-dashboard span {
	position: relative;
	padding: 9px 12px;
	border-radius: 14px;
	background: rgba(255, 255, 255, .1);
	color: rgba(255, 255, 255, .86);
	font-weight: 800;
}

.epc-hero-mini-dashboard span::before {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-left: 8px;
	border-radius: 50%;
	background: #27d9ff;
	content: "";
}

.epc-section {
	padding-top: clamp(44px, 6vw, 78px);
	padding-bottom: clamp(44px, 6vw, 78px);
}

.epc-section-head {
	max-width: 680px;
	margin-bottom: 28px;
}

.epc-section-head--inline {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	max-width: none;
}

.epc-section-head h2,
.epc-catalog-hero h1,
.epc-final-cta h2,
.epc-teacher-section h2 {
	margin: 10px 0;
	color: var(--epc-ink);
	font-size: clamp(30px, 5vw, 56px);
	font-weight: 900;
	letter-spacing: -.03em;
	line-height: 1.14;
}

.epc-section-head p,
.epc-catalog-hero p,
.epc-final-cta p,
.epc-teacher-section p {
	color: var(--epc-muted);
	font-size: 17px;
	line-height: 1.85;
}

.epc-stage-grid,
.epc-feature-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.epc-stage-card,
.epc-feature-card {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(217, 232, 246, .9);
	border-radius: 26px;
	background: rgba(255, 255, 255, .82);
	color: var(--epc-ink);
	box-shadow: 0 16px 42px rgba(10, 51, 105, .08);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.epc-stage-card {
	display: grid;
	gap: 8px;
	min-height: 160px;
	padding: 22px;
	text-decoration: none;
}

.epc-stage-card:hover,
.epc-feature-card:hover,
.epc-course-card:hover {
	transform: translateY(-5px);
	border-color: rgba(0, 119, 217, .34);
	box-shadow: 0 22px 56px rgba(10, 51, 105, .12);
}

.epc-stage-card span,
.epc-feature-card span {
	width: 44px;
	height: 44px;
	border-radius: 16px;
	background: linear-gradient(135deg, rgba(0, 119, 217, .95), rgba(0, 198, 215, .88));
}

.epc-stage-card strong {
	font-size: 22px;
}

.epc-stage-card small {
	color: var(--epc-muted);
	font-weight: 800;
}

.epc-stage-card--soon small {
	display: inline-flex;
	width: fit-content;
	border-radius: 999px;
	padding: 7px 12px;
	background: #e8f8ff;
	color: #063f8f !important;
	font-weight: 950;
	box-shadow: inset 0 0 0 1px rgba(0, 99, 189, .12);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card--soon small,
.epc-stage-card--soon small {
	position: relative;
	z-index: 4;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: fit-content !important;
	min-width: 92px;
	min-height: 38px;
	margin-top: 14px;
	border-radius: 999px;
	padding: 8px 18px;
	background: #e8f8ff !important;
	color: #063f8f !important;
	font-size: 17px !important;
	font-weight: 950 !important;
	line-height: 1.1;
	text-shadow: none !important;
	box-shadow: inset 0 0 0 1px rgba(0, 99, 189, .14), 0 12px 26px rgba(0, 20, 60, .16);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card--soon em,
.epc-stage-card--soon em {
	display: none !important;
}

.epc-stage-card em {
	position: absolute;
	left: 20px;
	bottom: 18px;
	color: var(--epc-primary);
	font-style: normal;
	font-weight: 900;
	transition: transform .2s ease;
}

.epc-stage-card:hover em,
.epc-btn--card:hover span {
	transform: translateX(-4px);
}

.epc-soft-section {
	max-width: none !important;
	background: linear-gradient(180deg, #eef9ff, #fff);
}

.epc-feature-card {
	padding: 24px;
}

.epc-feature-card h3 {
	margin: 18px 0 8px;
	color: var(--epc-ink);
	font-size: 22px;
}

.epc-feature-card p {
	margin: 0;
	color: var(--epc-muted);
	line-height: 1.8;
}

.epc-journey-steps,
.epc-stats-strip {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
}

.epc-journey-steps div,
.epc-stats-strip div {
	border: 1px solid var(--epc-line);
	border-radius: 24px;
	padding: 20px;
	background: #fff;
	box-shadow: 0 12px 36px rgba(10, 51, 105, .07);
}

.epc-journey-steps strong {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	margin-bottom: 12px;
	border-radius: 50%;
	background: var(--epc-ink);
	color: #fff;
}

.epc-stats-strip {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.epc-stats-strip strong {
	display: block;
	color: var(--epc-primary-deep);
	font-size: clamp(28px, 4vw, 48px);
}

.epc-teacher-section {
	display: grid;
	grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
	align-items: center;
	gap: 32px;
}

.epc-teacher-section__image {
	overflow: hidden;
	border-radius: 32px;
	background: var(--epc-soft);
	box-shadow: var(--epc-shadow);
}

.epc-teacher-section__image img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.epc-testimonials-section {
	border-top: 1px solid var(--epc-line);
	border-bottom: 1px solid var(--epc-line);
	background: rgba(255, 255, 255, .62);
}

.epc-faq-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.epc-faq-grid details {
	border: 1px solid var(--epc-line);
	border-radius: 20px;
	padding: 18px 20px;
	background: #fff;
	box-shadow: 0 12px 36px rgba(10, 51, 105, .07);
}

.epc-faq-grid summary {
	cursor: pointer;
	color: var(--epc-ink);
	font-weight: 900;
}

.epc-faq-grid p {
	margin: 12px 0 0;
	color: var(--epc-muted);
	line-height: 1.8;
}

.epc-final-cta {
	max-width: 1120px !important;
	margin-bottom: 40px;
	border-radius: 34px;
	padding: clamp(28px, 6vw, 60px) !important;
	background: linear-gradient(135deg, #061b42, #075ebc 70%, #00c6d7);
	color: #fff;
	text-align: center;
	box-shadow: 0 28px 70px rgba(0, 49, 105, .22);
}

.epc-final-cta h2,
.epc-final-cta p {
	color: #fff;
}

.epc-final-cta div {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin-top: 22px;
}

.epc-catalog {
	padding-bottom: 50px;
}

.epc-catalog-hero {
	padding-top: clamp(44px, 7vw, 86px);
	padding-bottom: 24px;
}

.epc-catalog-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 22px;
}

.epc-catalog-filters a {
	border: 1px solid var(--epc-line);
	border-radius: 999px;
	padding: 10px 15px;
	background: #fff;
	color: var(--epc-primary-deep);
	font-weight: 900;
	text-decoration: none;
}

.epc-progress {
	height: 10px;
	overflow: hidden;
	border-radius: 999px;
	background: #dbeafe;
}

.epc-progress span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--epc-secondary), var(--epc-primary));
	transition: width .5s ease;
}

.epc-course-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin: 24px 0;
}

.epc-course-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--epc-line);
	border-radius: 28px;
	background: var(--epc-card);
	box-shadow: 0 14px 42px rgba(9, 48, 99, .08);
	transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.epc-course-card__image {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: linear-gradient(135deg, #009deb, #00d5d8);
}

.epc-course-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .28s ease;
}

.epc-course-card:hover .epc-course-card__image img {
	transform: scale(1.025);
}

.epc-course-card__badge {
	position: absolute;
	top: 14px;
	right: 14px;
	border-radius: 999px;
	padding: 7px 11px;
	background: rgba(255, 255, 255, .94);
	color: var(--epc-primary-deep);
	font-size: 12px;
	font-weight: 900;
	box-shadow: 0 10px 28px rgba(0, 43, 96, .14);
}

.epc-course-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 20px;
}

.epc-course-card h3 {
	margin: 8px 0;
	font-size: clamp(20px, 2vw, 25px);
	line-height: 1.35;
}

.epc-course-card h3 a {
	color: var(--epc-ink);
}

.epc-course-card__category {
	color: var(--epc-primary);
	font-size: 13px;
	font-weight: 900;
}

.epc-course-card__teacher,
.epc-course-card__summary {
	margin: 0;
	color: var(--epc-muted);
	line-height: 1.75;
}

.epc-course-card__summary {
	margin-top: 10px;
}

.epc-course-card__meta,
.epc-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin: 14px 0;
}

.epc-course-card__meta span {
	color: #465b77;
	font-size: 13px;
	font-weight: 800;
}

.epc-course-card__meta span::before {
	margin-left: 5px;
	color: var(--epc-secondary);
	content: "•";
}

.epc-stat {
	border-radius: 14px;
	padding: 10px;
	background: var(--epc-soft);
	color: var(--epc-primary-deep);
	font-weight: 800;
}

.epc-stat small {
	display: block;
	color: var(--epc-muted);
	font-weight: 700;
}

.epc-course-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: auto;
	padding-top: 14px;
	border-top: 1px solid #edf5fb;
}

.epc-price {
	color: var(--epc-primary-deep);
	font-size: 20px;
	font-weight: 900;
}

.epc-price--muted {
	color: var(--epc-muted);
	font-size: 16px;
}

.epc-btn--card {
	min-height: 42px;
	padding: 10px 15px;
	box-shadow: none;
}

.epc-course-progress-label {
	display: block;
	margin: 6px 0 8px;
	color: var(--epc-primary-deep);
}

.epc-dashboard-hero,
.epc-course-sales__hero {
	position: relative;
	overflow: hidden;
	border-radius: 24px;
	padding: clamp(22px, 4vw, 42px);
	background: linear-gradient(135deg, #003b83, #0077d9 55%, #00c6d7);
	color: #fff;
	box-shadow: var(--epc-shadow);
}

.epc-dashboard-hero h2,
.epc-course-sales__hero h1 {
	margin: 0 0 10px;
	color: #fff;
	font-size: clamp(28px, 5vw, 48px);
}

.epc-dashboard-grid,
.epc-course-sales__grid,
.epc-lesson-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 22px;
	margin-top: 24px;
}

.epc-panel,
.epc-dashboard-card,
.epc-course-box,
.epc-lesson-panel,
.epc-lesson-sidebar {
	border: 1px solid var(--epc-line);
	border-radius: var(--epc-radius);
	background: #fff;
	padding: 20px;
	box-shadow: var(--epc-shadow);
}

.epc-dashboard-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 14px;
	margin: 22px 0;
}

.epc-empty-state {
	border: 1px dashed #95d8f3;
	border-radius: var(--epc-radius);
	padding: 24px;
	background: #f0fbff;
	text-align: center;
}

.epc-course-sales__media {
	overflow: hidden;
	border-radius: 20px;
	background: #042c62;
}

.epc-course-sales__media img {
	width: 100%;
	height: 100%;
	min-height: 280px;
	object-fit: cover;
	display: block;
}

.epc-course-outline {
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
}

.epc-course-outline li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
	border: 1px solid var(--epc-line);
	border-radius: 14px;
	padding: 12px;
	background: #fff;
}

.epc-course-outline a {
	color: var(--epc-ink);
	font-weight: 800;
}

.epc-course-outline__state {
	flex: 0 0 auto;
	font-size: 12px;
}

.epc-course-outline li.is-complete {
	border-color: rgba(22, 163, 74, .35);
	background: #f0fdf4;
}

.epc-course-outline li.is-locked {
	opacity: .72;
}

.epc-lesson-app {
	margin: 0 calc(50% - 50vw);
	padding: clamp(16px, 3vw, 34px);
	background: radial-gradient(circle at top right, #dff8ff 0, transparent 28%), var(--epc-bg);
}

.epc-lesson-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 0 auto 18px;
	max-width: 1240px;
}

.epc-lesson-layout {
	max-width: 1240px;
	margin-inline: auto;
}

.epc-lesson-main {
	min-width: 0;
}

.epc-protected-video,
.epc-lesson-video {
	margin-top: 0;
}

.epc-lesson-title {
	margin: 18px 0 8px;
	font-size: clamp(26px, 4vw, 40px);
}

.epc-lesson-actions,
.epc-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 18px 0;
}

.epc-tab {
	border: 1px solid var(--epc-line);
	border-radius: 999px;
	padding: 10px 15px;
	background: #fff;
	font-weight: 800;
}

.epc-sidebar-title {
	margin-top: 0;
}

.epc-mobile-bottom-nav {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 90;
	display: none;
	grid-template-columns: repeat(5, 1fr);
	border-top: 1px solid var(--epc-line);
	background: rgba(255, 255, 255, .94);
	backdrop-filter: blur(14px);
}

.epc-mobile-bottom-nav a {
	padding: 10px 6px;
	color: var(--epc-primary-deep);
	text-align: center;
	font-size: 12px;
	font-weight: 800;
}

.woocommerce-account .woocommerce,
.woocommerce-checkout .woocommerce {
	direction: rtl;
	font-family: var(--epc-font);
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout,
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation {
	border: 1px solid var(--epc-line);
	border-radius: var(--epc-radius);
	background: #fff;
	box-shadow: var(--epc-shadow);
}

.woocommerce form .form-row label {
	color: var(--epc-ink);
	font-weight: 800;
}

.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container .select2-selection--single {
	min-height: 46px;
	border: 1px solid var(--epc-line);
	border-radius: 12px;
	padding: 10px 12px;
	background: #f8fcff;
	color: var(--epc-ink);
}

.woocommerce button.button,
.woocommerce a.button,
.woocommerce #respond input#submit,
.woocommerce input.button {
	border-radius: 999px;
	background: linear-gradient(135deg, var(--epc-primary), var(--epc-secondary));
	color: #fff;
	font-weight: 900;
	box-shadow: 0 12px 26px rgba(0, 119, 217, .2);
}

.epc-auth-field,
.epc-account-profile {
	margin-top: 12px;
}

.epc-account-profile {
	border: 1px solid var(--epc-line);
	border-radius: var(--epc-radius);
	padding: 18px;
	background: var(--epc-soft);
}

.epc-account-profile legend {
	padding: 0 8px;
	color: var(--epc-primary-deep);
	font-weight: 900;
}

.epc-certificate-card {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 22px;
	overflow: hidden;
	margin: 18px 0;
	padding: 26px;
	border: 1px solid rgba(0, 185, 255, .28);
	border-radius: 28px;
	background:
		radial-gradient(circle at 10% 15%, rgba(0, 210, 255, .18), transparent 34%),
		linear-gradient(135deg, #05275d 0%, #075ebc 50%, #00b7ef 100%);
	color: #fff;
	box-shadow: 0 24px 55px rgba(0, 45, 105, .22);
}

.epc-certificate-card::after {
	position: absolute;
	inset-inline-end: -70px;
	bottom: -90px;
	width: 240px;
	height: 240px;
	border: 34px solid rgba(255, 255, 255, .14);
	border-radius: 50%;
	content: "";
}

.epc-certificate-body {
	position: relative;
	z-index: 1;
}

.epc-certificate-badge {
	display: inline-flex;
	margin-bottom: 10px;
	padding: 7px 13px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	font-size: 13px;
	font-weight: 900;
}

.epc-certificate-card h3 {
	margin: 0 0 10px;
	color: #fff;
	font-size: clamp(30px, 5vw, 54px);
	line-height: 1;
}

.epc-certificate-statement {
	max-width: 780px;
	margin: 0 0 18px;
	color: rgba(255, 255, 255, .9);
	font-size: 18px;
	line-height: 1.9;
}

.epc-certificate-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.epc-certificate-meta span {
	padding: 9px 12px;
	border-radius: 14px;
	background: rgba(255, 255, 255, .14);
	color: #fff;
}

.epc-certificate-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.epc-certificate-actions .epc-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 10px 16px;
	border-radius: 999px;
	font-weight: 900;
	text-decoration: none;
}

.epc-certificate-actions .epc-button-primary {
	background: #fff;
	color: #0559b0;
}

.epc-certificate-actions .epc-button-ghost {
	border: 1px solid rgba(255, 255, 255, .38);
	color: #fff;
}

.epc-certificate-qr {
	position: relative;
	z-index: 1;
	align-self: center;
	padding: 12px;
	border-radius: 22px;
	background: rgba(255, 255, 255, .96);
	color: var(--epc-primary-deep);
	text-align: center;
	box-shadow: 0 18px 40px rgba(0, 30, 70, .2);
}

.epc-certificate-qr img {
	display: block;
	width: 140px;
	height: 140px;
	border-radius: 12px;
}

.epc-certificate-qr small {
	display: block;
	margin-top: 8px;
	font-weight: 900;
}

.epc-certificate-verify {
	max-width: 1050px;
	margin: 0 auto;
}

.epc-certificate-verify form {
	display: flex;
	gap: 10px;
	margin: 18px 0;
	padding: 14px;
	border: 1px solid var(--epc-line);
	border-radius: 20px;
	background: #fff;
	box-shadow: var(--epc-shadow);
}

.epc-certificate-verify input {
	flex: 1;
	min-height: 46px;
	border: 1px solid var(--epc-line);
	border-radius: 14px;
	padding: 0 14px;
}

.epc-certificate-verify button {
	border: 0;
	border-radius: 999px;
	padding: 0 18px;
	background: linear-gradient(135deg, var(--epc-primary), var(--epc-secondary));
	color: #fff;
	font-weight: 900;
}

.epc-contact-hero,
.epc-contact-form-panel,
.epc-product-features,
.epc-public-footer {
	border-radius: 26px;
	background: #fff;
	box-shadow: var(--epc-shadow);
}

.epc-contact-hero {
	margin: 18px auto;
	padding: clamp(26px, 5vw, 54px);
	background:
		radial-gradient(circle at 12% 18%, rgba(0, 220, 255, .26), transparent 30%),
		linear-gradient(135deg, #05275d, #0474d8 58%, #29d7ff);
	color: #fff;
}

.epc-contact-hero h1 {
	max-width: 780px;
	margin: 12px 0;
	color: #fff;
	font-size: clamp(32px, 6vw, 64px);
	line-height: 1.08;
}

.epc-contact-hero p {
	max-width: 760px;
	color: rgba(255, 255, 255, .9);
	font-size: 18px;
	line-height: 1.9;
}

.epc-contact-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin: 20px 0;
}

.epc-contact-card {
	display: grid;
	gap: 8px;
	padding: 20px;
	border: 1px solid var(--epc-line);
	border-radius: 20px;
	background: linear-gradient(180deg, #fff, var(--epc-soft));
	color: var(--epc-ink);
	text-decoration: none;
}

.epc-contact-card strong {
	color: var(--epc-primary-deep);
	font-size: 19px;
}

.epc-contact-card span {
	color: var(--epc-muted);
	line-height: 1.7;
}

.epc-contact-form-panel {
	padding: clamp(22px, 4vw, 34px);
}

.epc-contact-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.epc-contact-form label {
	display: grid;
	gap: 7px;
	color: var(--epc-primary-deep);
	font-weight: 900;
}

.epc-contact-form input,
.epc-contact-form select,
.epc-contact-form textarea {
	width: 100%;
	border: 1px solid var(--epc-line);
	border-radius: 14px;
	padding: 12px 14px;
	background: #f8fcff;
	color: var(--epc-ink);
}

.epc-contact-form__full,
.epc-contact-form .epc-btn {
	grid-column: 1 / -1;
}

.epc-success-message {
	padding: 14px 16px;
	border: 1px solid rgba(10, 166, 92, .24);
	border-radius: 18px;
	background: #eafff4;
	color: #06633b;
	font-weight: 900;
}

.epc-product-features {
	margin: 18px 0;
	padding: 18px;
}

.epc-product-features h3 {
	margin-top: 0;
	color: var(--epc-primary-deep);
}

.epc-product-features ul {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.epc-product-features li::before {
	margin-left: 8px;
	color: #09a95f;
	content: "✓";
	font-weight: 900;
}

.epc-public-footer {
	margin: 34px auto 0;
	border-radius: 0;
	background: linear-gradient(135deg, #031d49, #075ebc);
	color: #fff;
}

.epc-public-footer__inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 26px 18px;
	text-align: center;
}

.epc-public-footer strong {
	display: block;
	margin-bottom: 12px;
	font-size: 24px;
}

.epc-public-footer nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 18px;
	margin-bottom: 12px;
}

.epc-public-footer a,
.epc-public-footer span {
	color: rgba(255, 255, 255, .9);
}

@media (max-width: 900px) {
	.epc-home-hero,
	.epc-teacher-section {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.epc-home-hero__copy {
		order: 1;
	}

	.epc-home-hero__visual {
		order: 2;
	}

	.epc-stage-grid,
	.epc-feature-grid,
	.epc-stats-strip,
	.epc-faq-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.epc-journey-steps {
		grid-template-columns: 1fr;
	}

	.epc-course-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.epc-dashboard-grid,
	.epc-course-sales__grid,
	.epc-lesson-layout,
	.epc-certificate-card {
		grid-template-columns: 1fr;
	}

	.epc-lesson-sidebar {
		order: 2;
	}

	.epc-course-card__footer {
		align-items: stretch;
		flex-direction: column;
	}

	.epc-course-card__footer .epc-btn {
		width: 100%;
	}

	.epc-certificate-qr {
		justify-self: start;
	}

	.epc-contact-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.epc-lesson-sidebar {
		max-height: 42vh;
		overflow: auto;
		border: 1px solid var(--epc-line);
	}
}

@media (max-width: 720px) {
	.entry-content > .epc-home,
	.entry-content > .epc-catalog {
		margin-top: -12px;
	}

	.epc-home > section,
	.epc-catalog > section,
	.epc-catalog-filters,
	.epc-catalog .epc-course-grid {
		padding-right: 16px;
		padding-left: 16px;
	}

	.epc-home-hero {
		padding-top: 34px;
		padding-bottom: 32px;
	}

	.epc-home-hero__copy h1 {
		font-size: clamp(38px, 11vw, 54px);
	}

	.epc-home-hero__actions,
	.epc-final-cta div,
	.epc-section-head--inline {
		align-items: stretch;
		flex-direction: column;
	}

	.epc-home-hero__actions .epc-btn,
	.epc-final-cta .epc-btn {
		width: 100%;
	}

	.epc-home-hero__visual img {
		border-width: 7px;
		border-radius: 30px;
	}

	.epc-floating-card {
		position: static;
		display: inline-flex;
		margin: 10px 6px 0 0;
	}

	.epc-hero-mini-dashboard {
		position: static;
		width: 100%;
		margin-top: 14px;
	}

	.epc-stage-grid,
	.epc-feature-grid,
	.epc-stats-strip,
	.epc-faq-grid,
	.epc-course-grid {
		grid-template-columns: 1fr;
	}

	.epc-course-card__footer {
		align-items: stretch;
		flex-direction: column;
	}

	.epc-btn--card {
		width: 100%;
	}

	body.logged-in {
		padding-bottom: 58px;
	}

	.epc-mobile-bottom-nav {
		display: grid;
	}

	.epc-stats,
	.epc-course-card__meta {
		grid-template-columns: 1fr;
	}

	.epc-certificate-verify form,
	.epc-certificate-actions,
	.epc-contact-form {
		flex-direction: column;
	}

	.epc-contact-grid,
	.epc-contact-form {
		grid-template-columns: 1fr;
	}

	.epc-contact-form__full,
	.epc-contact-form .epc-btn {
		grid-column: auto;
	}
}

/* Premium visual override for the public home and catalog screens. */
.epc-home,
.epc-catalog {
	--epc-premium-navy: #06142e;
	--epc-premium-ink: #0a1730;
	--epc-premium-soft: #f4f8fb;
	background: #f7fbff;
}

.epc-home-hero {
	position: relative;
	max-width: none !important;
	min-height: min(760px, calc(100vh - 80px));
	padding: clamp(56px, 8vw, 96px) max(24px, calc((100vw - 1220px) / 2)) clamp(46px, 8vw, 86px) !important;
	background:
		linear-gradient(90deg, rgba(6, 20, 46, .96) 0%, rgba(6, 20, 46, .88) 46%, rgba(0, 109, 210, .54) 100%),
		var(--epc-hero-art, none) center / cover no-repeat,
		radial-gradient(circle at 72% 18%, rgba(31, 216, 255, .28), transparent 28%),
		#06142e;
	color: #fff;
}

.epc-home-hero::after {
	position: absolute;
	right: max(20px, calc((100vw - 1220px) / 2));
	bottom: 26px;
	left: max(20px, calc((100vw - 1220px) / 2));
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .45), transparent);
	content: "";
}

.epc-home-hero__copy {
	position: relative;
	z-index: 2;
}

.epc-home-hero .epc-badge {
	background: rgba(255, 255, 255, .12);
	color: #e9fbff;
	border: 1px solid rgba(255, 255, 255, .18);
}

.epc-home-hero__copy h1 {
	max-width: 760px;
	color: #fff;
	font-size: clamp(46px, 7.4vw, 96px);
	letter-spacing: -.055em;
	text-wrap: balance;
}

.epc-home-hero__copy p {
	max-width: 630px;
	color: rgba(255, 255, 255, .78);
	font-size: clamp(18px, 2vw, 23px);
}

.epc-home-hero__actions .epc-btn:first-child {
	background: #fff;
	color: #06306a;
	box-shadow: 0 22px 44px rgba(0, 0, 0, .22);
}

.epc-home-hero__actions .epc-btn--ghost {
	background: rgba(255, 255, 255, .1);
	color: #fff;
	border-color: rgba(255, 255, 255, .2);
}

.epc-trust-row {
	max-width: 620px;
	color: rgba(255, 255, 255, .78);
}

.epc-home-hero__visual {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	min-height: 520px;
}

.epc-home-hero__visual::before {
	inset: auto;
	width: min(86%, 430px);
	height: min(86%, 430px);
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 50%, rgba(33, 215, 255, .28), transparent 58%),
		linear-gradient(135deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .02));
	box-shadow: inset 0 0 0 34px rgba(255, 255, 255, .035);
	transform: none;
}

.epc-home-hero__visual img {
	width: min(88%, 460px);
	border: 1px solid rgba(255, 255, 255, .26);
	border-radius: 38px;
	box-shadow: 0 34px 90px rgba(0, 0, 0, .35);
	aspect-ratio: 4 / 4.6;
	object-position: center top;
}

.epc-floating-card {
	border: 1px solid rgba(255, 255, 255, .2);
	background: rgba(7, 23, 47, .62);
	color: #fff;
	box-shadow: 0 22px 54px rgba(0, 0, 0, .24);
}

.epc-section {
	position: relative;
}

.epc-section-head h2,
.epc-catalog-hero h1,
.epc-final-cta h2,
.epc-teacher-section h2 {
	color: #081832;
	font-size: clamp(34px, 4.8vw, 64px);
	letter-spacing: -.045em;
}

.epc-stage-card,
.epc-feature-card,
.epc-journey-steps div,
.epc-stats-strip div,
.epc-faq-grid details {
	border-color: rgba(8, 24, 50, .08);
	background: rgba(255, 255, 255, .78);
	box-shadow: 0 16px 48px rgba(8, 24, 50, .07);
}

.epc-stage-card {
	min-height: 178px;
	padding: 24px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(245, 250, 255, .88)),
		radial-gradient(circle at 12% 12%, rgba(31, 216, 255, .18), transparent 34%);
}

.epc-stage-card span,
.epc-feature-card span {
	background: #06142e;
	box-shadow: 0 12px 28px rgba(6, 20, 46, .18);
}

.epc-course-grid--premium {
	align-items: stretch;
}

.epc-course-card {
	border: 1px solid rgba(8, 24, 50, .08);
	border-radius: 30px;
	background: #fff;
	box-shadow: 0 18px 52px rgba(8, 24, 50, .08);
}

.epc-course-card__image::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(6, 20, 46, .02), rgba(6, 20, 46, .28));
	content: "";
}

.epc-course-card__badge {
	z-index: 2;
	background: #06142e;
	color: #fff;
}

.epc-course-card--available .epc-course-card__badge {
	background: #0f9f6e;
}

.epc-course-card--coming-soon .epc-course-card__badge {
	background: #e8f8ff;
	color: #063f8f;
	box-shadow: 0 12px 28px rgba(0, 80, 160, .18);
}

.epc-course-card__body {
	padding: 22px;
}

.epc-course-card__category {
	display: inline-flex;
	width: fit-content;
	border-radius: 999px;
	padding: 6px 10px;
	background: #eef7ff;
	color: #0063bd;
}

.epc-course-card h3 {
	font-size: clamp(22px, 2vw, 28px);
	letter-spacing: -.02em;
}

.epc-course-card__teacher {
	color: #263956;
	font-weight: 800;
}

.epc-course-card__summary {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	min-height: 3.45em;
}

.epc-course-card__meta {
	margin-top: 18px;
	padding: 12px 0;
	border-top: 1px solid #edf3f8;
	border-bottom: 1px solid #edf3f8;
}

.epc-course-card__footer {
	border-top: 0;
}

.epc-price {
	font-size: 22px;
}

.epc-btn--card {
	background: #06142e;
}

.epc-catalog-hero {
	max-width: none !important;
	padding: clamp(54px, 8vw, 96px) max(24px, calc((100vw - 1200px) / 2)) 28px !important;
	background: linear-gradient(135deg, #06142e, #063f8f 70%, #00a8dd);
	color: #fff;
}

.epc-catalog-hero h1,
.epc-catalog-hero p {
	color: #fff;
}

.epc-catalog-filters {
	margin-top: -22px;
	border-radius: 24px;
	padding-top: 18px;
	padding-bottom: 18px;
	background: rgba(255, 255, 255, .86);
	box-shadow: 0 20px 48px rgba(8, 24, 50, .1);
	backdrop-filter: blur(12px);
}

.epc-teacher-section,
.epc-final-cta {
	overflow: hidden;
}

.epc-teacher-section {
	border-radius: 36px;
	padding: clamp(22px, 4vw, 42px) !important;
	background: #fff;
	box-shadow: 0 24px 70px rgba(8, 24, 50, .08);
}

.epc-final-cta {
	background:
		radial-gradient(circle at 18% 10%, rgba(33, 215, 255, .28), transparent 28%),
		linear-gradient(135deg, #06142e, #032b67 64%, #008ccc);
}

@media (max-width: 1024px) {
	.epc-home-hero {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.epc-home-hero__visual {
		min-height: 420px;
	}

	.epc-course-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.epc-home-hero {
		padding-top: 42px !important;
	}

	.epc-home-hero__copy h1 {
		font-size: clamp(42px, 12vw, 68px);
	}

	.epc-home-hero__visual {
		min-height: 0;
	}

	.epc-home-hero__visual img {
		width: min(100%, 390px);
	}
}

@media (max-width: 430px) {
	.epc-home-hero {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	.epc-home-hero__copy h1 {
		font-size: 42px;
	}

	.epc-course-card {
		border-radius: 24px;
	}
}

.epc-platform-showcase {
	max-width: none !important;
	padding-right: max(20px, calc((100vw - 1200px) / 2)) !important;
	padding-left: max(20px, calc((100vw - 1200px) / 2)) !important;
	background:
		radial-gradient(circle at 12% 18%, rgba(0, 198, 215, .16), transparent 30%),
		linear-gradient(180deg, #06142e, #092656);
	color: #fff;
}

.epc-platform-showcase .epc-section-head h2 {
	color: #fff;
}

.epc-platform-showcase .epc-section-head p {
	color: rgba(255, 255, 255, .72);
}

.epc-bento-grid {
	display: grid;
	grid-template-columns: 1.3fr .85fr .85fr;
	gap: 16px;
}

.epc-bento-card {
	position: relative;
	overflow: hidden;
	min-height: 250px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 30px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .105), rgba(255, 255, 255, .045));
	color: #fff;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}

.epc-bento-card--large {
	grid-row: span 2;
	min-height: 520px;
}

.epc-bento-card--accent {
	background: linear-gradient(135deg, rgba(0, 198, 215, .35), rgba(255, 255, 255, .07));
}

.epc-bento-kicker {
	display: inline-flex;
	margin-bottom: 10px;
	border-radius: 999px;
	padding: 7px 11px;
	background: rgba(255, 255, 255, .1);
	color: #99eeff;
	font-size: 12px;
	font-weight: 900;
}

.epc-bento-card h3 {
	margin: 0 0 10px;
	color: #fff;
	font-size: clamp(24px, 3vw, 42px);
	line-height: 1.1;
}

.epc-bento-card p {
	color: rgba(255, 255, 255, .72);
	line-height: 1.85;
}

.epc-video-mock {
	position: absolute;
	right: 24px;
	bottom: 24px;
	left: 24px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 24px;
	background: #07172f;
}

.epc-video-mock div {
	position: relative;
	aspect-ratio: 16 / 9;
	background:
		linear-gradient(135deg, rgba(0, 198, 215, .36), transparent),
		radial-gradient(circle at 50% 50%, rgba(255, 255, 255, .2), transparent 24%),
		#0b2c62;
}

.epc-video-mock div::after {
	position: absolute;
	top: 50%;
	right: 50%;
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #fff;
	color: #07172f;
	content: "▶";
	font-weight: 900;
	transform: translate(50%, -50%);
}

.epc-video-mock span,
.epc-video-mock strong {
	display: block;
	padding: 12px 14px;
}

.epc-video-mock strong {
	padding-top: 0;
	color: #49dfff;
}

.epc-quiz-mock {
	display: grid;
	gap: 9px;
	margin-top: 18px;
}

.epc-quiz-mock strong,
.epc-quiz-mock span,
.epc-quiz-mock em,
.epc-file-mock li {
	border-radius: 14px;
	padding: 10px 12px;
	background: rgba(255, 255, 255, .09);
	color: rgba(255, 255, 255, .9);
	font-style: normal;
}

.epc-quiz-mock em {
	width: fit-content;
	background: rgba(22, 163, 74, .22);
	color: #a7f3d0;
	font-weight: 900;
}

.epc-progress-mock {
	height: 14px;
	margin: 20px 0;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(255, 255, 255, .12);
}

.epc-progress-mock span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #28d9ff, #fff);
}

.epc-file-mock {
	display: grid;
	gap: 9px;
	margin: 18px 0 0;
	padding: 0;
	list-style: none;
}

@media (max-width: 1024px) {
	.epc-bento-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.epc-bento-card--large {
		grid-column: 1 / -1;
		grid-row: auto;
	}
}

@media (max-width: 720px) {
	.epc-bento-grid {
		grid-template-columns: 1fr;
	}

	.epc-bento-card,
	.epc-bento-card--large {
		min-height: auto;
	}

	.epc-video-mock {
		position: static;
		margin-top: 18px;
	}
}

/* Benchmark-inspired shell: removes the stock WordPress feel on the flagship screens. */
body:has(.epc-home) .site-header,
body:has(.epc-catalog) .site-header,
body:has(.epc-home) .entry-header,
body:has(.epc-catalog) .entry-header {
	display: none !important;
}

.epc-shell-nav {
	position: sticky;
	top: 12px;
	z-index: 90;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: min(1180px, calc(100% - 32px));
	margin: 0 auto -70px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 28px;
	background: rgba(2, 23, 62, .74);
	box-shadow: 0 22px 60px rgba(0, 18, 55, .26);
	backdrop-filter: blur(22px);
}

.epc-shell-brand,
.epc-shell-links a,
.epc-shell-cta {
	text-decoration: none;
}

.epc-shell-brand {
	display: inline-grid;
	line-height: 1;
}

.epc-shell-brand span {
	color: #8cefff;
	font-size: 13px;
	font-weight: 950;
}

.epc-shell-brand strong {
	color: #fff;
	font-size: 24px;
	font-weight: 950;
}

.epc-shell-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(12px, 2vw, 28px);
}

.epc-shell-links a {
	color: rgba(255, 255, 255, .82);
	font-size: 14px;
	font-weight: 900;
}

.epc-shell-links a:hover {
	color: #fff;
}

.epc-shell-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	border-radius: 999px;
	background: linear-gradient(135deg, #24dcff, #fff);
	color: #072d66;
	font-weight: 950;
	box-shadow: 0 14px 34px rgba(36, 220, 255, .25);
}

.epc-home-hero {
	min-height: min(820px, 100vh) !important;
	padding-top: clamp(130px, 13vw, 180px) !important;
	background:
		linear-gradient(90deg, rgba(3, 15, 45, .98) 0%, rgba(4, 36, 92, .9) 42%, rgba(0, 136, 214, .34) 100%),
		var(--epc-hero-art, none) center / cover no-repeat,
		#06142e !important;
}

.epc-home-hero::before {
	background:
		radial-gradient(circle at 18% 28%, rgba(31, 216, 255, .22), transparent 24%),
		linear-gradient(115deg, transparent 0 52%, rgba(255, 255, 255, .12) 52% 52.6%, transparent 52.6% 100%);
}

.epc-home-hero::after {
	right: auto;
	bottom: -160px;
	left: -120px;
	width: 430px;
	height: 430px;
	border: 48px solid rgba(120, 229, 255, .2);
	border-radius: 50%;
	background: transparent;
}

.epc-home-hero__copy h1 {
	max-width: 820px;
	font-size: clamp(52px, 8vw, 104px);
}

.epc-home-hero__visual img {
	width: min(92%, 500px);
	border-radius: 52px;
}

@media (max-width: 900px) {
	.epc-shell-nav {
		position: relative;
		top: auto;
		flex-wrap: wrap;
		margin-bottom: -92px;
	}

	.epc-shell-links {
		order: 3;
		width: 100%;
		overflow-x: auto;
		justify-content: flex-start;
		padding-bottom: 2px;
	}

	.epc-home-hero {
		padding-top: 150px !important;
	}
}

@media (max-width: 720px) {
	.epc-shell-nav {
		width: calc(100% - 24px);
		border-radius: 22px;
		margin-bottom: -116px;
	}

	.epc-shell-cta {
		min-height: 38px;
		padding: 0 14px;
		font-size: 13px;
	}

	.epc-home-hero {
		padding-top: 168px !important;
	}
}

/* Maged v3 complete rebuild: app-like landing inspired by modern teacher platforms. */
body:has(.maged-v3) {
	background: #06142e;
}

body:has(.maged-v3) .site-header,
body:has(.maged-v3) .entry-header,
body:has(.maged-v3) .post-thumb,
body:has(.maged-v3) .site-footer {
	display: none !important;
}

.entry-content > .maged-v3 {
	margin: -32px calc(50% - 50vw) 0;
}

.maged-v3 {
	--mv3-navy: #06142e;
	--mv3-blue: #0477df;
	--mv3-cyan: #25d9ff;
	--mv3-ice: #effbff;
	--mv3-ink: #07162d;
	position: relative;
	overflow: hidden;
	min-height: 100vh;
	background:
		radial-gradient(circle at 10% 10%, rgba(37, 217, 255, .22), transparent 28%),
		linear-gradient(180deg, #06142e 0%, #08245a 38%, #f5fbff 38%, #fff 100%);
	color: var(--mv3-ink);
	direction: rtl;
}

.maged-v3 a {
	text-decoration: none;
}

.maged-v3-nav {
	position: sticky;
	top: 14px;
	z-index: 40;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: min(1180px, calc(100% - 32px));
	margin: 0 auto -76px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 30px;
	background: rgba(3, 19, 54, .78);
	box-shadow: 0 24px 70px rgba(0, 13, 43, .32);
	backdrop-filter: blur(24px);
}

.maged-v3-logo {
	display: grid;
	line-height: 1;
}

.maged-v3-logo span {
	color: var(--mv3-cyan);
	font-size: 12px;
	font-weight: 950;
	letter-spacing: .04em;
}

.maged-v3-logo strong {
	color: #fff;
	font-size: 24px;
	font-weight: 950;
}

.maged-v3-menu {
	display: flex;
	gap: clamp(12px, 2vw, 30px);
}

.maged-v3-menu a {
	color: rgba(255, 255, 255, .8);
	font-size: 14px;
	font-weight: 900;
}

.maged-v3-menu a:hover {
	color: #fff;
}

.maged-v3-login,
.maged-v3-actions a,
.maged-v3-teacher a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	font-weight: 950;
}

.maged-v3-login {
	min-height: 44px;
	padding: 0 18px;
	background: #fff;
	color: #062b63;
	box-shadow: 0 16px 36px rgba(37, 217, 255, .18);
}

.maged-v3-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, .86fr);
	align-items: center;
	gap: clamp(28px, 5vw, 76px);
	min-height: 830px;
	padding: clamp(140px, 13vw, 190px) max(22px, calc((100vw - 1180px) / 2)) 96px;
	background:
		linear-gradient(90deg, rgba(6, 20, 46, .98), rgba(5, 38, 96, .91) 48%, rgba(0, 129, 215, .42)),
		var(--maged-cover, none) center / cover no-repeat,
		var(--mv3-navy);
	color: #fff;
}

.maged-v3-hero::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(115deg, transparent 0 54%, rgba(255, 255, 255, .13) 54% 54.7%, transparent 54.7%),
		radial-gradient(circle at 84% 72%, rgba(37, 217, 255, .18), transparent 24%);
	content: "";
}

.maged-v3-hero__copy,
.maged-v3-hero__media {
	position: relative;
	z-index: 2;
}

.maged-v3-eyebrow,
.maged-v3-section-head span,
.maged-v3-teacher span {
	display: inline-flex;
	width: fit-content;
	border-radius: 999px;
	padding: 8px 13px;
	background: rgba(37, 217, 255, .13);
	color: #91efff;
	font-size: 13px;
	font-weight: 950;
}

.maged-v3-hero h1 {
	max-width: 850px;
	margin: 22px 0;
	color: #fff;
	font-size: clamp(58px, 9vw, 118px);
	font-weight: 950;
	letter-spacing: -.065em;
	line-height: .98;
	text-shadow: 0 24px 70px rgba(0, 0, 0, .36);
	text-wrap: balance;
}

.maged-v3-hero p {
	max-width: 680px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: clamp(18px, 2vw, 24px);
	line-height: 1.9;
}

.maged-v3-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 34px 0 26px;
}

.maged-v3-actions a {
	min-height: 54px;
	padding: 0 24px;
	background: #fff;
	color: #062b63;
	box-shadow: 0 22px 46px rgba(0, 0, 0, .25);
}

.maged-v3-actions a + a {
	background: rgba(255, 255, 255, .1);
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .22);
	box-shadow: none;
}

.maged-v3-proof {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 130px));
	gap: 12px;
}

.maged-v3-proof div {
	padding: 14px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 22px;
	background: rgba(255, 255, 255, .08);
	backdrop-filter: blur(12px);
}

.maged-v3-proof strong {
	display: block;
	color: #fff;
	font-size: 28px;
	font-weight: 950;
}

.maged-v3-proof span {
	color: rgba(255, 255, 255, .68);
	font-weight: 850;
}

.maged-v3-hero__media {
	display: grid;
	place-items: center;
	min-height: 560px;
}

.maged-v3-orbit {
	position: absolute;
	width: min(88vw, 490px);
	height: min(88vw, 490px);
	border: 2px solid rgba(255, 255, 255, .18);
	border-radius: 50%;
	box-shadow: inset 0 0 0 34px rgba(255, 255, 255, .04), 0 34px 90px rgba(0, 0, 0, .28);
}

.maged-v3-hero__media img {
	position: relative;
	z-index: 2;
	width: min(92%, 510px);
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 54px;
	box-shadow: 0 38px 110px rgba(0, 0, 0, .5);
	aspect-ratio: 4 / 4.7;
	object-fit: cover;
	object-position: center top;
}

.maged-v3-player {
	position: absolute;
	right: 0;
	bottom: 52px;
	z-index: 3;
	width: min(280px, 78%);
	padding: 16px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 24px;
	background: rgba(4, 20, 54, .78);
	color: #fff;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .35);
	backdrop-filter: blur(18px);
}

.maged-v3-player span,
.maged-v3-player em {
	display: block;
	color: rgba(255, 255, 255, .68);
	font-style: normal;
	font-weight: 850;
}

.maged-v3-player strong {
	display: block;
	margin: 5px 0;
	font-size: 22px;
	font-weight: 950;
}

.maged-v3-player em {
	color: var(--mv3-cyan);
}

.maged-v3-strip,
.maged-v3-stages,
.maged-v3-product,
.maged-v3-courses,
.maged-v3-teacher {
	width: min(1180px, calc(100% - 32px));
	margin-right: auto;
	margin-left: auto;
}

.maged-v3-strip {
	position: relative;
	z-index: 5;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: -46px;
}

.maged-v3-strip span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 92px;
	border: 1px solid rgba(255, 255, 255, .5);
	border-radius: 28px;
	background: linear-gradient(135deg, #168adf, #2fd6ee);
	color: #fff;
	text-align: center;
	font-size: clamp(16px, 1.7vw, 23px);
	font-weight: 950;
	box-shadow: 0 24px 60px rgba(5, 93, 168, .22);
}

.maged-v3-stages,
.maged-v3-product,
.maged-v3-courses,
.maged-v3-teacher {
	padding: clamp(62px, 8vw, 104px) 0;
}

.maged-v3-section-head {
	max-width: 760px;
	margin-bottom: 30px;
}

.maged-v3-section-head span,
.maged-v3-teacher span {
	background: #e8f9ff;
	color: #0766b5;
}

.maged-v3-section-head h2,
.maged-v3-teacher h2 {
	margin: 14px 0 0;
	color: #07162d;
	font-size: clamp(36px, 5.6vw, 76px);
	font-weight: 950;
	letter-spacing: -.055em;
	line-height: 1.04;
	text-wrap: balance;
}

.maged-v3-stage-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.maged-v3-stage-grid .epc-stage-card {
	min-height: 230px;
	border: 0;
	border-radius: 34px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(235, 248, 255, .9)),
		radial-gradient(circle at 20% 12%, rgba(37, 217, 255, .24), transparent 36%);
	box-shadow: 0 26px 70px rgba(6, 33, 86, .12);
}

.maged-v3-product {
	width: 100%;
	padding-right: max(18px, calc((100vw - 1180px) / 2));
	padding-left: max(18px, calc((100vw - 1180px) / 2));
	background:
		radial-gradient(circle at 82% 16%, rgba(37, 217, 255, .18), transparent 28%),
		linear-gradient(180deg, #071631, #0a2f73);
	color: #fff;
}

.maged-v3-product .maged-v3-section-head h2 {
	color: #fff;
}

.maged-v3-bento {
	display: grid;
	grid-template-columns: 1.2fr .8fr .8fr;
	gap: 16px;
}

.maged-v3-bento article {
	min-height: 230px;
	padding: 24px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 32px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .045));
	box-shadow: 0 28px 80px rgba(0, 0, 0, .24);
}

.maged-v3-bento__big {
	grid-row: span 2;
}

.maged-v3-bento strong,
.maged-v3-bento h3 {
	display: block;
	margin: 18px 0 10px;
	color: #fff;
	font-size: clamp(24px, 3vw, 42px);
	font-weight: 950;
	line-height: 1.1;
}

.maged-v3-bento p {
	color: rgba(255, 255, 255, .72);
	line-height: 1.8;
}

.maged-v3-video-screen {
	position: relative;
	overflow: hidden;
	border-radius: 26px;
	aspect-ratio: 16 / 10;
	background:
		linear-gradient(135deg, rgba(37, 217, 255, .32), transparent),
		radial-gradient(circle at 50% 50%, rgba(255, 255, 255, .22), transparent 26%),
		#092b66;
}

.maged-v3-video-screen span {
	position: absolute;
	top: 50%;
	right: 50%;
	width: 74px;
	height: 74px;
	border-radius: 50%;
	background: #fff;
	transform: translate(50%, -50%);
}

.maged-v3-video-screen span::after {
	position: absolute;
	top: 50%;
	right: 50%;
	color: #08245a;
	content: "▶";
	font-size: 27px;
	font-weight: 950;
	transform: translate(45%, -50%);
}

.maged-v3-courses .epc-course-grid {
	padding: 0;
}

.maged-v3-teacher {
	display: grid;
	grid-template-columns: .8fr 1fr;
	align-items: center;
	gap: clamp(26px, 5vw, 72px);
}

.maged-v3-teacher img {
	width: 100%;
	border-radius: 42px;
	box-shadow: 0 34px 90px rgba(7, 22, 45, .16);
}

.maged-v3-teacher p {
	color: #506077;
	font-size: 19px;
	line-height: 1.95;
}

.maged-v3-teacher a {
	min-height: 50px;
	padding: 0 22px;
	background: linear-gradient(135deg, var(--mv3-blue), var(--mv3-cyan));
	color: #fff;
	box-shadow: 0 18px 40px rgba(4, 119, 223, .22);
}

@media (max-width: 980px) {
	.maged-v3-nav {
		position: relative;
		top: auto;
		flex-wrap: wrap;
		margin-bottom: -118px;
	}

	.maged-v3-menu {
		order: 3;
		width: 100%;
		overflow-x: auto;
		padding-bottom: 4px;
	}

	.maged-v3-hero,
	.maged-v3-teacher {
		grid-template-columns: 1fr;
	}

	.maged-v3-hero {
		padding-top: 190px;
	}

	.maged-v3-strip,
	.maged-v3-stage-grid,
	.maged-v3-bento {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.maged-v3-bento__big {
		grid-column: 1 / -1;
		grid-row: auto;
	}
}

@media (max-width: 680px) {
	.entry-content > .maged-v3 {
		margin-top: -12px;
	}

	.maged-v3-nav {
		width: calc(100% - 20px);
		margin-bottom: -140px;
		border-radius: 22px;
	}

	.maged-v3-login {
		min-height: 38px;
		font-size: 12px;
	}

	.maged-v3-hero {
		min-height: auto;
		padding: 178px 16px 64px;
	}

	.maged-v3-hero h1 {
		font-size: clamp(46px, 15vw, 72px);
	}

	.maged-v3-actions,
	.maged-v3-proof {
		grid-template-columns: 1fr;
		flex-direction: column;
	}

	.maged-v3-actions a {
		width: 100%;
	}

	.maged-v3-hero__media {
		min-height: 0;
	}

	.maged-v3-player {
		position: static;
		width: 100%;
		margin-top: 14px;
	}

	.maged-v3-strip,
	.maged-v3-stage-grid,
	.maged-v3-bento {
		grid-template-columns: 1fr;
	}
}

/* Final polish: premium auth, checkout, and quieter course cards. */
.woocommerce-account .entry-header {
	display: none;
}

.woocommerce-account .site-content,
.woocommerce-checkout .site-content {
	background:
		radial-gradient(circle at 86% 10%, rgba(37, 217, 255, .18), transparent 28%),
		linear-gradient(180deg, #06142e 0%, #0a2f73 310px, #f5fbff 310px, #fff 100%);
}

.epc-auth-shell {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(22px, 4vw, 56px);
	max-width: 1180px;
	margin: 34px auto 70px;
	padding: 18px;
	border-radius: 40px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 34px 100px rgba(6, 20, 46, .18);
}

.epc-auth-copy {
	position: relative;
	overflow: hidden;
	min-height: 620px;
	padding: clamp(28px, 4vw, 48px);
	border-radius: 32px;
	background:
		linear-gradient(180deg, rgba(6, 20, 46, .18), rgba(6, 20, 46, .78)),
		url("https://school.rivereg.com/wp-content/uploads/2026/09/MR-Maged.jpg") center top / cover no-repeat,
		#06142e;
	color: #fff;
}

.epc-auth-copy h1 {
	max-width: 520px;
	margin: 18px 0;
	color: #fff;
	font-size: clamp(36px, 5vw, 68px);
	font-weight: 950;
	letter-spacing: -.055em;
	line-height: 1.04;
}

.epc-auth-copy p,
.epc-auth-copy li {
	color: rgba(255, 255, 255, .82);
	font-weight: 800;
	line-height: 1.9;
}

.epc-auth-copy ul {
	position: absolute;
	right: 28px;
	bottom: 28px;
	left: 28px;
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.epc-auth-copy li {
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 18px;
	padding: 12px 14px;
	background: rgba(255, 255, 255, .1);
	backdrop-filter: blur(14px);
}

.epc-auth-copy li::before {
	margin-left: 8px;
	color: #72eeff;
	content: "✓";
}

.epc-auth-course-summary {
	display: grid;
	gap: 5px;
	max-width: 390px;
	margin-top: 24px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 22px;
	padding: 16px;
	background: rgba(255, 255, 255, .12);
	backdrop-filter: blur(16px);
}

.epc-auth-course-summary small {
	color: rgba(255, 255, 255, .7);
	font-weight: 850;
}

.epc-auth-course-summary strong {
	color: #fff;
	font-size: 20px;
	font-weight: 950;
}

.epc-auth-course-summary span {
	color: #83f0ff;
	font-weight: 950;
}

.epc-auth-forms {
	padding: clamp(18px, 4vw, 42px);
}

.epc-auth-forms .u-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.epc-auth-forms .u-column1,
.epc-auth-forms .u-column2 {
	float: none !important;
	width: auto !important;
}

.epc-auth-forms h2 {
	margin: 0 0 14px;
	color: #07162d;
	font-size: 30px;
	font-weight: 950;
}

.epc-auth-form-intro {
	margin-bottom: 18px;
	border-radius: 22px;
	padding: 16px;
	background: #eef9ff;
}

.epc-auth-form-intro span {
	display: block;
	color: #0766b5;
	font-weight: 950;
}

.epc-auth-form-intro p {
	margin: 5px 0 0;
	color: #53657d;
	line-height: 1.7;
}

.epc-auth-forms form.login,
.epc-auth-forms form.register {
	margin: 0 !important;
	border: 1px solid rgba(7, 22, 45, .08) !important;
	border-radius: 28px !important;
	padding: 22px !important;
	background: #fff;
	box-shadow: 0 20px 60px rgba(7, 22, 45, .07);
}

.epc-auth-forms .form-row {
	margin-bottom: 14px !important;
}

.epc-auth-forms label {
	margin-bottom: 7px;
	color: #142640;
	font-size: 14px;
	font-weight: 900;
}

.epc-auth-forms input.input-text,
.epc-auth-forms select {
	min-height: 50px;
	border: 1px solid #dbe8f6 !important;
	border-radius: 16px !important;
	padding: 0 14px !important;
	background: #f8fcff !important;
	color: #07162d;
	font-size: 15px;
	font-weight: 800;
}

.epc-auth-forms input.input-text:focus,
.epc-auth-forms select:focus {
	border-color: #25bfe8 !important;
	box-shadow: 0 0 0 4px rgba(37, 217, 255, .14) !important;
	outline: 0;
}

.epc-password-wrap {
	position: relative;
	display: block;
}

.epc-password-toggle {
	position: absolute;
	top: 50%;
	left: 8px;
	min-height: 34px;
	border: 0;
	border-radius: 999px;
	padding: 0 10px;
	background: #e7f8ff;
	color: #0766b5;
	font-size: 12px;
	font-weight: 950;
	transform: translateY(-50%);
}

.epc-password-wrap input {
	padding-left: 70px !important;
}

.epc-inline-error {
	display: block;
	margin-top: 6px;
	color: #c52323;
	font-weight: 850;
}

.epc-field-error input,
.epc-field-error select {
	border-color: #f1a7a7 !important;
	background: #fff8f8 !important;
}

.epc-password-strength {
	display: block;
	margin-top: 6px;
	color: #9a6b09;
	font-weight: 850;
}

.epc-password-strength.is-good {
	color: #087a4a;
}

.epc-auth-terms label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	line-height: 1.8;
}

.epc-auth-terms input {
	margin-top: 7px;
}

.epc-auth-forms button.button,
.epc-auth-forms input.button,
.woocommerce-checkout button.button {
	width: 100%;
	min-height: 52px;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #0477df, #25d9ff) !important;
	color: #fff !important;
	font-weight: 950 !important;
	box-shadow: 0 18px 38px rgba(4, 119, 223, .22);
}

.epc-order-success {
	margin: 24px 0;
	border-radius: 26px;
	padding: 24px;
	background: #effbf5;
	color: #063d2a;
	box-shadow: 0 18px 46px rgba(6, 61, 42, .08);
}

.epc-order-success h2 {
	margin-top: 0;
	color: #063d2a;
}

.epc-order-success div {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.epc-course-card__summary {
	display: none;
}

.epc-course-card__teacher {
	margin-bottom: 14px;
	color: #5b6c83;
}

.epc-course-card__meta {
	gap: 8px;
}

.epc-course-card__meta span {
	padding: 8px 10px;
}

.epc-course-card--coming-soon .epc-price {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	border-radius: 999px;
	padding: 8px 16px;
	background: #e8f8ff;
	color: #063f8f;
	font-size: 18px;
	font-weight: 950;
	box-shadow: inset 0 0 0 1px rgba(0, 99, 189, .12);
}

@media (max-width: 980px) {
	.epc-auth-shell,
	.epc-auth-forms .u-columns {
		grid-template-columns: 1fr;
	}

	.epc-auth-copy {
		min-height: 420px;
	}
}

@media (max-width: 680px) {
	.epc-auth-shell {
		width: calc(100% - 20px);
		margin-top: 16px;
		padding: 10px;
		border-radius: 28px;
	}

	.epc-auth-copy {
		min-height: auto;
		padding: 24px;
	}

	.epc-auth-copy ul {
		position: static;
		margin-top: 20px;
	}

	.epc-auth-forms {
		padding: 8px;
	}
}

/* Visibility fix for the platform showcase: brighter section, visible copy, stronger cards. */
.maged-v3 .maged-v3-product {
	position: relative;
	isolation: isolate;
	margin-top: 0;
	padding-top: clamp(54px, 7vw, 86px);
	padding-bottom: clamp(58px, 7vw, 92px);
	background:
		radial-gradient(circle at 18% 18%, rgba(255, 255, 255, .34), transparent 24%),
		radial-gradient(circle at 82% 8%, rgba(37, 217, 255, .34), transparent 26%),
		linear-gradient(135deg, #0477df 0%, #083f98 46%, #06142e 100%) !important;
	color: #fff !important;
}

.maged-v3 .maged-v3-product::before {
	position: absolute;
	inset: 18px max(16px, calc((100vw - 1240px) / 2));
	z-index: -1;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 44px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .04));
	content: "";
}

.maged-v3 .maged-v3-product .maged-v3-section-head {
	position: relative;
	z-index: 2;
	margin-bottom: 26px;
}

.maged-v3 .maged-v3-product .maged-v3-section-head span {
	background: rgba(255, 255, 255, .18);
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, .28);
}

.maged-v3 .maged-v3-product .maged-v3-section-head h2 {
	max-width: 850px;
	margin-top: 14px;
	color: #ffffff !important;
	text-shadow: 0 16px 45px rgba(0, 0, 0, .24);
}

.maged-v3 .maged-v3-bento {
	position: relative;
	z-index: 2;
	align-items: stretch;
}

.maged-v3 .maged-v3-bento article {
	border: 1px solid rgba(255, 255, 255, .28);
	background: rgba(255, 255, 255, .94);
	color: #07162d;
	box-shadow: 0 26px 70px rgba(0, 18, 55, .22);
}

.maged-v3 .maged-v3-bento article:nth-child(2),
.maged-v3 .maged-v3-bento article:nth-child(3),
.maged-v3 .maged-v3-bento article:nth-child(4),
.maged-v3 .maged-v3-bento article:nth-child(5) {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.maged-v3 .maged-v3-bento strong,
.maged-v3 .maged-v3-bento h3 {
	color: #07162d !important;
}

.maged-v3 .maged-v3-bento p {
	color: #53657d !important;
	font-size: 16px;
}

.maged-v3 .maged-v3-bento__big {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(235, 249, 255, .94)) !important;
}

.maged-v3 .maged-v3-video-screen {
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .16), 0 20px 50px rgba(4, 44, 105, .2);
}

@media (max-width: 680px) {
	.maged-v3 .maged-v3-product {
		padding-right: 16px;
		padding-left: 16px;
	}

	.maged-v3 .maged-v3-product::before {
		inset: 10px;
		border-radius: 30px;
	}
}

/* Screenshot fixes: make dark sections readable and repair contact select controls. */
.epc-standalone-marketing .maged-v3 .maged-v3-stages {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(62px, 8vw, 100px) max(18px, calc((100vw - 1180px) / 2));
	background:
		radial-gradient(circle at 12% 22%, rgba(37, 217, 255, .28), transparent 26%),
		linear-gradient(135deg, #0a4ea5 0%, #061f55 55%, #06142e 100%);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stages .maged-v3-section-head {
	max-width: 820px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stages .maged-v3-section-head span {
	margin: 0 auto;
	background: rgba(255, 255, 255, .16);
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, .28);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stages .maged-v3-section-head h2 {
	color: #ffffff !important;
	text-shadow: 0 18px 48px rgba(0, 0, 0, .32);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid {
	width: min(1180px, 100%);
	margin-right: auto;
	margin-left: auto;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(221, 245, 255, .92)),
		radial-gradient(circle at 18% 18%, rgba(37, 217, 255, .34), transparent 34%) !important;
	color: #07162d !important;
	box-shadow: 0 30px 80px rgba(0, 18, 55, .28);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card::before {
	position: absolute;
	top: 24px;
	right: 28px;
	z-index: -1;
	color: rgba(4, 119, 223, .08);
	font-size: clamp(48px, 5vw, 78px);
	font-weight: 950;
	line-height: .9;
	content: "مرحلة";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card::after {
	position: absolute;
	left: -42px;
	bottom: -46px;
	z-index: -1;
	width: 168px;
	height: 168px;
	border: 30px solid rgba(4, 119, 223, .09);
	border-radius: 50%;
	content: "";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card:nth-child(1)::before {
	content: "إعدادي";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card:nth-child(2)::before {
	content: "أولى";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card:nth-child(3)::before {
	content: "ثانوية";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span {
	position: absolute;
	top: 24px;
	left: 24px;
	width: 58px;
	height: 58px;
	border-radius: 20px;
	background:
		linear-gradient(135deg, #0477df, #25d9ff);
	box-shadow: 0 18px 34px rgba(4, 119, 223, .26);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span::before,
.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span::after {
	position: absolute;
	border-radius: 999px;
	background: rgba(255, 255, 255, .9);
	content: "";
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span::before {
	top: 18px;
	right: 14px;
	width: 30px;
	height: 5px;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span::after {
	top: 30px;
	right: 14px;
	width: 22px;
	height: 5px;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card strong {
	position: relative;
	z-index: 2;
	margin-top: 80px;
	color: #07162d !important;
	font-size: clamp(26px, 2.4vw, 36px);
	font-weight: 950;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em {
	color: #436078 !important;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small {
	position: relative;
	z-index: 2;
	width: fit-content;
	margin-top: 12px;
	border-radius: 999px;
	padding: 8px 12px;
	background: rgba(4, 119, 223, .09);
	color: #075da9 !important;
	font-size: 14px;
	font-weight: 900;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em {
	position: absolute;
	right: 24px;
	bottom: 24px;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #07162d;
	color: #ffffff !important;
	font-size: 18px;
	font-style: normal;
	box-shadow: 0 16px 30px rgba(7, 22, 45, .18);
}

.woocommerce-account .ast-single-entry-banner,
.woocommerce-account .entry-header,
.woocommerce-account .page-header {
	display: block !important;
	margin: 0 !important;
	padding: 56px 18px 34px !important;
	background:
		linear-gradient(90deg, rgba(6, 20, 46, .96), rgba(5, 66, 140, .88)),
		#06142e !important;
	text-align: center;
}

.woocommerce-account .ast-single-entry-banner h1,
.woocommerce-account .entry-header h1,
.woocommerce-account .page-header h1,
.woocommerce-account .entry-title {
	color: #ffffff !important;
	text-shadow: 0 14px 34px rgba(0, 0, 0, .28);
}

.woocommerce-account .ast-single-entry-banner *,
.woocommerce-account .entry-header *,
.woocommerce-account .page-header * {
	color: #ffffff !important;
}

.woocommerce-account .ast-single-entry-banner p,
.woocommerce-account .entry-header p,
.woocommerce-account .page-header p {
	color: rgba(255, 255, 255, .84) !important;
}

.epc-contact-form label {
	overflow: visible;
	color: #07162d;
}

.epc-contact-form input,
.epc-contact-form select,
.epc-contact-form textarea {
	width: 100%;
	color: #07162d !important;
	font-size: 16px;
	font-weight: 800;
	text-align: right;
}

.epc-contact-form select {
	display: block;
	height: 58px !important;
	min-height: 58px !important;
	line-height: 1.4 !important;
	padding: 0 18px !important;
	background-color: #f8fcff !important;
	background-position: 18px 50%;
	appearance: auto;
}

.epc-contact-form select option {
	color: #07162d;
	background: #ffffff;
	font-size: 16px;
}

	.epc-contact-form textarea {
	min-height: 150px;
	padding-top: 14px !important;
	line-height: 1.8;
}

@media (max-width: 980px) {
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
		min-height: 210px;
	}
}

@media (max-width: 680px) {
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
		min-height: 185px;
		border-radius: 28px;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card::before {
		font-size: 56px;
	}
}

/* Auth sizing fix: larger login/register cards and readable account banner copy. */
.woocommerce-account .site-content .ast-container {
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}

.woocommerce-account .entry-content > .woocommerce {
	margin-right: auto;
	margin-left: auto;
}

.epc-auth-shell {
	grid-template-columns: minmax(520px, 1.18fr) minmax(420px, .82fr) !important;
	width: min(1380px, calc(100% - 44px));
	max-width: 1380px !important;
	padding: 22px !important;
}

.epc-auth-forms {
	padding: clamp(28px, 4vw, 56px) !important;
}

.epc-auth-forms .u-columns {
	grid-template-columns: repeat(2, minmax(340px, 1fr)) !important;
	gap: 24px !important;
	align-items: start;
}

.epc-auth-forms form.login,
.epc-auth-forms form.register {
	min-height: 560px;
	padding: clamp(28px, 3vw, 38px) !important;
	border-radius: 34px !important;
}

.epc-auth-forms h2 {
	margin-bottom: 20px;
	font-size: clamp(34px, 3vw, 44px);
}

.epc-auth-form-intro {
	padding: 20px 22px;
	border-radius: 24px;
}

.epc-auth-form-intro span {
	font-size: 18px;
}

.epc-auth-form-intro p {
	font-size: 16px;
}

.epc-auth-forms .form-row {
	margin-bottom: 18px !important;
}

.epc-auth-forms input.input-text,
.epc-auth-forms select {
	min-height: 58px;
	border-radius: 18px !important;
	font-size: 16px;
}

.epc-auth-copy {
	min-height: 690px;
}

.epc-auth-copy h1 {
	font-size: clamp(48px, 5.6vw, 82px);
}

.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation {
	font-size: 17px;
}

@media (max-width: 1180px) {
	.epc-auth-shell,
	.epc-auth-forms .u-columns {
		grid-template-columns: 1fr !important;
	}

	.epc-auth-copy {
		order: -1;
		min-height: 430px;
	}
}

@media (max-width: 680px) {
	.epc-auth-shell {
		width: calc(100% - 18px);
		padding: 10px !important;
	}

	.epc-auth-forms {
		padding: 10px !important;
	}

	.epc-auth-forms form.login,
	.epc-auth-forms form.register {
		min-height: auto;
		padding: 22px !important;
	}
}

/* Account page final layout fix: no Astra banner, true RTL 50/50 login/register forms. */
.woocommerce-account .ast-single-entry-banner,
.woocommerce-account .entry-header,
.woocommerce-account .page-header,
.woocommerce-account .ast-archive-description {
	display: none !important;
}

.woocommerce-account .site-content {
	padding-top: 34px;
	background:
		radial-gradient(circle at 86% 10%, rgba(37, 217, 255, .16), transparent 28%),
		linear-gradient(180deg, #f4fbff 0%, #ffffff 100%) !important;
}

.woocommerce-account .entry-content > .woocommerce {
	width: 100%;
	max-width: 1260px;
	padding: 0 20px;
	box-sizing: border-box;
}

.woocommerce-account .epc-auth-shell {
	display: block !important;
	width: 100% !important;
	max-width: 1260px !important;
	margin: 0 auto 70px !important;
	padding: 24px !important;
	border-radius: 38px;
	background: #ffffff;
	direction: rtl !important;
	box-sizing: border-box;
}

.woocommerce-account .epc-auth-copy {
	min-height: auto !important;
	margin-bottom: 24px;
	padding: 28px 34px !important;
	border-radius: 30px;
	background:
		linear-gradient(90deg, rgba(6, 20, 46, .95), rgba(4, 119, 223, .72)),
		url("https://school.rivereg.com/wp-content/uploads/2026/09/Header.jpg") center / cover no-repeat !important;
	text-align: right;
}

.woocommerce-account .epc-auth-copy h1 {
	max-width: none;
	margin: 10px 0 8px;
	color: #ffffff !important;
	font-size: clamp(32px, 4vw, 54px) !important;
	line-height: 1.15;
	text-align: right;
}

.woocommerce-account .epc-auth-copy p {
	max-width: 760px;
	margin: 0;
	color: rgba(255, 255, 255, .88) !important;
	text-align: right;
}

.woocommerce-account .epc-auth-copy ul {
	position: static !important;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px !important;
}

.woocommerce-account .epc-auth-copy li {
	width: auto;
	color: #ffffff;
}

.woocommerce-account .epc-auth-forms {
	width: 100%;
	padding: 0 !important;
	direction: rtl !important;
	box-sizing: border-box;
}

.woocommerce-account .epc-auth-forms .u-columns {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	gap: 24px !important;
	width: 100%;
	direction: rtl !important;
	box-sizing: border-box;
}

.woocommerce-account .epc-auth-forms .u-column1,
.woocommerce-account .epc-auth-forms .u-column2 {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

.woocommerce-account .epc-auth-forms form.login,
.woocommerce-account .epc-auth-forms form.register {
	width: 100% !important;
	min-height: 0 !important;
	padding: clamp(28px, 3vw, 42px) !important;
	box-sizing: border-box;
	text-align: right;
}

.woocommerce-account .epc-auth-forms h2,
.woocommerce-account .epc-auth-forms label,
.woocommerce-account .epc-auth-form-intro,
.woocommerce-account .epc-auth-form-intro p {
	text-align: right !important;
}

.woocommerce-account .epc-auth-forms input.input-text,
.woocommerce-account .epc-auth-forms select {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	text-align: right;
	direction: rtl;
}

.woocommerce-account .epc-auth-forms input[type="email"],
.woocommerce-account .epc-auth-forms input[type="password"] {
	direction: ltr;
	text-align: left;
}

.woocommerce-account .epc-auth-forms .form-row {
	width: 100% !important;
	box-sizing: border-box;
}

.woocommerce-account .epc-password-toggle {
	left: 10px;
	right: auto;
}

@media (max-width: 900px) {
	.woocommerce-account .epc-auth-forms .u-columns {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 680px) {
	.woocommerce-account .entry-content > .woocommerce {
		padding: 0 10px;
	}

	.woocommerce-account .epc-auth-shell {
		padding: 12px !important;
		border-radius: 26px;
	}

	.woocommerce-account .epc-auth-copy {
		padding: 24px !important;
	}
}

/* Mobile LMS Sprint: app-like phone experience without changing desktop layout. */
@media (max-width: 768px) {
	html,
	body {
		overflow-x: hidden;
	}

	body {
		font-size: 16px;
	}

	img,
	video,
	iframe {
		max-width: 100%;
	}

	.epc-btn,
	.maged-v3-actions a,
	.woocommerce button.button,
	.woocommerce a.button,
	.woocommerce input.button,
	.epc-contact-form .epc-btn {
		min-height: 48px;
		width: 100%;
		padding: 12px 18px;
		font-size: 15px;
	}

	.maged-v3-nav,
	.epc-shell-nav {
		position: sticky;
		top: 10px;
		display: grid;
		grid-template-columns: 1fr auto auto;
		align-items: center;
		width: calc(100% - 20px);
		min-height: 58px;
		margin: 10px auto -88px;
		padding: 10px 12px;
		border-radius: 22px;
	}

	.maged-v3-logo strong,
	.epc-shell-brand strong {
		font-size: 20px;
	}

	.maged-v3-login,
	.epc-shell-cta {
		min-height: 38px;
		padding: 0 12px;
		font-size: 12px;
		white-space: nowrap;
	}

	.epc-mobile-menu-toggle {
		display: inline-grid !important;
		place-items: center;
		width: 44px;
		height: 44px;
		border: 0;
		border-radius: 16px;
		background: linear-gradient(135deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .08));
		color: #fff;
		font-size: 20px;
		font-weight: 950;
		line-height: 1;
		box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
	}

	.maged-v3-menu,
	.epc-shell-links {
		position: absolute;
		top: calc(100% + 10px);
		right: 0;
		left: 0;
		display: none;
		grid-template-columns: 1fr;
		gap: 8px;
		width: 100%;
		overflow: visible;
		padding: 12px;
		border: 1px solid rgba(255, 255, 255, .16);
		border-radius: 22px;
		background: rgba(3, 19, 54, .96);
		box-shadow: 0 24px 70px rgba(0, 14, 42, .28);
	}

	.maged-v3-nav.is-menu-open .maged-v3-menu,
	.epc-shell-nav.is-menu-open .epc-shell-links {
		display: grid;
	}

	.maged-v3-menu a,
	.epc-shell-links a {
		min-height: 46px;
		border-radius: 14px;
		padding: 12px 14px;
		background: rgba(255, 255, 255, .08);
		color: #fff;
	}

	.maged-v3-hero {
		display: grid;
		grid-template-columns: 1fr;
		gap: 20px;
		min-height: auto;
		padding: 120px 16px 42px !important;
	}

	.maged-v3-hero h1 {
		max-width: 100%;
		margin: 14px 0;
		font-size: clamp(38px, 12vw, 54px);
		line-height: 1.05;
	}

	.maged-v3-hero p {
		font-size: 16px;
		line-height: 1.75;
	}

	.maged-v3-actions {
		display: grid;
		gap: 10px;
		margin: 22px 0 0;
	}

	.maged-v3-proof,
	.maged-v3-player {
		display: none !important;
	}

	.maged-v3-hero__media {
		min-height: 0;
	}

	.maged-v3-hero__media img {
		width: min(100%, 340px);
		border-radius: 32px;
	}

	.maged-v3-strip {
		display: flex;
		width: calc(100% - 20px);
		overflow-x: auto;
		gap: 10px;
		margin-top: -22px;
		padding: 0 0 8px;
		scroll-snap-type: x mandatory;
	}

	.maged-v3-strip span {
		flex: 0 0 72%;
		min-height: 70px;
		border-radius: 22px;
		font-size: 16px;
		scroll-snap-align: start;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stages,
	.maged-v3 .maged-v3-product,
	.maged-v3-courses,
	.maged-v3-teacher {
		padding-top: 44px;
		padding-bottom: 48px;
	}

	.maged-v3-section-head h2,
	.maged-v3-teacher h2,
	.epc-section-head h2,
	.epc-catalog-hero h1 {
		font-size: clamp(28px, 9vw, 40px) !important;
		line-height: 1.16;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid {
		display: flex;
		overflow-x: auto;
		gap: 12px;
		padding-bottom: 10px;
		scroll-snap-type: x mandatory;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
		flex: 0 0 78%;
		min-height: 170px;
		padding: 20px;
		scroll-snap-align: start;
	}

	.maged-v3-bento,
	.epc-course-grid,
	.epc-course-grid--premium,
	.epc-stage-grid,
	.epc-feature-grid,
	.epc-contact-grid,
	.epc-contact-form,
	.epc-dashboard-grid,
	.epc-course-sales__grid,
	.epc-lesson-layout {
		grid-template-columns: 1fr !important;
	}

	.epc-catalog-filters {
		display: flex;
		overflow-x: auto;
		flex-wrap: nowrap;
		gap: 8px;
		padding: 0 16px 12px;
	}

	.epc-catalog-filters a {
		flex: 0 0 auto;
		min-height: 42px;
		white-space: nowrap;
	}

	.epc-course-card {
		width: 100%;
		border-radius: 26px;
	}

	.epc-course-card__image {
		aspect-ratio: 16 / 9;
		background: linear-gradient(135deg, #eaf8ff, #ffffff);
	}

	.epc-course-card__image img {
		object-fit: contain !important;
		background: #eaf8ff;
	}

	.epc-course-card__body {
		padding: 18px;
	}

	.epc-course-card h3 {
		font-size: 22px;
		line-height: 1.25;
	}

	.epc-course-card__meta {
		display: flex;
		overflow-x: auto;
		grid-template-columns: none;
		flex-wrap: nowrap;
	}

	.epc-course-card__meta span {
		flex: 0 0 auto;
		min-height: 38px;
	}

	.epc-course-card__footer {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.epc-price {
		text-align: center;
	}

	.woocommerce-account .site-content {
		padding-top: 12px;
	}

	.woocommerce-account .epc-auth-shell {
		width: calc(100% - 16px) !important;
		margin-bottom: 84px !important;
		padding: 10px !important;
		border-radius: 26px;
	}

	.woocommerce-account .epc-auth-copy {
		margin-bottom: 12px;
		padding: 18px !important;
		border-radius: 22px;
	}

	.woocommerce-account .epc-auth-copy h1 {
		font-size: 28px !important;
	}

	.woocommerce-account .epc-auth-copy p,
	.woocommerce-account .epc-auth-copy ul {
		display: none;
	}

	.woocommerce-account .epc-auth-forms .u-columns {
		display: block !important;
	}

	.epc-auth-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		margin-bottom: 12px;
		padding: 6px;
		border-radius: 999px;
		background: #eaf6ff;
	}

	.epc-auth-tabs button {
		min-height: 44px;
		border: 0;
		border-radius: 999px;
		background: transparent;
		color: #075da9;
		font-weight: 950;
	}

	.epc-auth-tabs button.is-active {
		background: #fff;
		color: #07162d;
		box-shadow: 0 10px 24px rgba(7, 22, 45, .1);
	}

	.epc-auth-forms .u-columns[data-auth-mode="login"] .u-column2,
	.epc-auth-forms .u-columns[data-auth-mode="register"] .u-column1 {
		display: none !important;
	}

	.woocommerce-account .epc-auth-forms form.login,
	.woocommerce-account .epc-auth-forms form.register {
		padding: 18px !important;
		border-radius: 22px !important;
	}

	.woocommerce-account .epc-auth-forms h2 {
		font-size: 26px;
	}

	.epc-auth-form-intro {
		padding: 14px;
	}

	.woocommerce-account .epc-auth-forms input.input-text,
	.woocommerce-account .epc-auth-forms select,
	.woocommerce-checkout input.input-text,
	.woocommerce-checkout select,
	.woocommerce-checkout textarea,
	.epc-contact-form input,
	.epc-contact-form select,
	.epc-contact-form textarea {
		min-height: 52px !important;
		font-size: 16px;
	}

	.woocommerce-checkout .woocommerce {
		padding: 16px !important;
	}

	.woocommerce-checkout .col2-set,
	.woocommerce-checkout #order_review,
	.woocommerce-checkout #order_review_heading {
		width: 100% !important;
		float: none !important;
	}

	.woocommerce-checkout #place_order {
		position: sticky;
		bottom: max(10px, env(safe-area-inset-bottom));
		z-index: 20;
	}

	.epc-course-sales {
		padding-bottom: 84px;
	}

	.epc-course-sales__hero {
		padding: 26px 16px;
	}

	.epc-course-sales__hero h1 {
		font-size: 34px;
	}

	.epc-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.epc-course-box {
		position: sticky;
		bottom: max(10px, env(safe-area-inset-bottom));
		z-index: 18;
	}

	.epc-lesson-app {
		padding: 12px;
	}

	.epc-lesson-topbar {
		align-items: stretch;
		flex-direction: column;
	}

	.epc-lesson-video,
	.epc-protected-video {
		margin: 12px 0 !important;
		border-radius: 18px !important;
	}

	.epc-protected-video video {
		aspect-ratio: 16 / 9;
		max-height: none !important;
	}

	.epc-lesson-panel,
	.epc-lesson-sidebar {
		padding: 16px;
		border-radius: 22px;
	}

	.epc-lesson-actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.epc-tabs {
		display: flex;
		overflow-x: auto;
		flex-wrap: nowrap;
		gap: 8px;
	}

	.epc-tab {
		flex: 0 0 auto;
		min-height: 42px;
	}

	.epc-lesson-sidebar {
		max-height: 55vh;
		overflow: auto;
	}

	.epc-contact-page {
		padding: 12px;
	}

	.epc-contact-card {
		min-height: 74px;
	}

	.epc-contact-form-panel {
		padding: 18px;
		border-radius: 24px;
	}

	.epc-certificate-verify {
		padding: 18px;
	}

	.epc-certificate-verify form {
		display: grid;
		gap: 10px;
	}

	.epc-public-footer {
		margin-bottom: 64px;
	}

	.epc-mobile-bottom-nav {
		padding-bottom: max(8px, env(safe-area-inset-bottom));
	}
}

@media (max-width: 430px) {
	.maged-v3-hero h1 {
		font-size: 40px;
	}

	.maged-v3-hero {
		padding-top: 116px !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
		flex-basis: 84%;
	}

	.maged-v3-strip span {
		flex-basis: 82%;
	}
}

@media (max-width: 390px) {
	.maged-v3-login,
	.epc-shell-cta {
		display: none;
	}

	.maged-v3-nav,
	.epc-shell-nav {
		grid-template-columns: 1fr auto;
	}

	.woocommerce-account .epc-auth-forms form.login,
	.woocommerce-account .epc-auth-forms form.register {
		padding: 14px !important;
	}
}

/* Mobile sprint hardening: final overrides for phone-only LMS polish. */
.epc-legal-page,
.epc-not-found-page {
	display: grid;
	gap: 18px;
	width: min(920px, calc(100% - 32px));
	margin: 90px auto;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 34px;
	padding: clamp(28px, 6vw, 56px);
	background:
		radial-gradient(circle at 14% 10%, rgba(97, 226, 255, .24), transparent 30%),
		linear-gradient(135deg, rgba(6, 20, 46, .96), rgba(6, 93, 181, .9));
	box-shadow: 0 30px 90px rgba(0, 22, 64, .22);
	color: #fff;
	text-align: right;
}

.epc-legal-page h1,
.epc-not-found-page h1 {
	margin: 0;
	color: #fff;
	font-size: clamp(34px, 6vw, 58px);
	font-weight: 950;
	line-height: 1.12;
}

.epc-legal-page p,
.epc-not-found-page p {
	max-width: 760px;
	margin: 0;
	color: rgba(255, 255, 255, .86);
	font-size: 18px;
	font-weight: 750;
	line-height: 1.9;
}

.epc-not-found-page__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

@media (max-width: 768px) {
	.woocommerce-account,
	.woocommerce-account body,
	.woocommerce-account .site,
	.woocommerce-account .site-content,
	.woocommerce-account .ast-container,
	.woocommerce-account .entry-content,
	.woocommerce-account .woocommerce {
		overflow-x: hidden !important;
	}

	.woocommerce-account .site-content {
		padding: 12px 0 78px !important;
		background: linear-gradient(180deg, #f5fbff 0%, #fff 100%) !important;
	}

	.woocommerce-account .entry-content > .woocommerce {
		width: 100% !important;
		max-width: none !important;
		padding: 0 14px !important;
	}

	.woocommerce-account .epc-auth-shell {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto 34px !important;
		padding: 12px !important;
		border-radius: 28px !important;
		direction: rtl !important;
	}

	.woocommerce-account .epc-auth-copy {
		min-height: 150px !important;
		margin: 0 0 14px !important;
		padding: 22px !important;
		border-radius: 24px !important;
		background:
			linear-gradient(90deg, rgba(3, 16, 42, .92), rgba(7, 110, 207, .78)),
			url("https://school.rivereg.com/wp-content/uploads/2026/09/Header.jpg") center / cover no-repeat !important;
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-copy h1 {
		margin: 8px 0 8px !important;
		color: #fff !important;
		font-size: clamp(29px, 8.8vw, 42px) !important;
		text-shadow: 0 12px 28px rgba(0, 14, 42, .42);
	}

	.woocommerce-account .epc-auth-copy p {
		display: block !important;
		max-width: 100% !important;
		color: rgba(255, 255, 255, .9) !important;
		font-size: 14px !important;
		line-height: 1.75 !important;
	}

	.woocommerce-account .epc-auth-copy ul {
		display: none !important;
	}

	.woocommerce-account .epc-auth-forms {
		width: 100% !important;
		padding: 0 !important;
		direction: rtl !important;
	}

	.woocommerce-account .epc-auth-forms .u-columns {
		display: block !important;
		width: 100% !important;
		min-width: 0 !important;
		direction: rtl !important;
	}

	.woocommerce-account .epc-auth-forms .u-column1,
	.woocommerce-account .epc-auth-forms .u-column2 {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.woocommerce-account .epc-auth-forms form.login,
	.woocommerce-account .epc-auth-forms form.register {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 22px !important;
		border-radius: 26px !important;
		box-sizing: border-box !important;
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-forms h2 {
		margin-bottom: 14px !important;
		color: #06142e !important;
		font-size: clamp(31px, 9vw, 42px) !important;
		line-height: 1.2 !important;
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-form-intro {
		margin-bottom: 18px !important;
		padding: 18px !important;
		border-radius: 22px !important;
		background: #eaf8ff !important;
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-form-intro p,
	.woocommerce-account .epc-auth-form-intro span,
	.woocommerce-account .epc-auth-forms label {
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-forms .form-row {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 0 18px !important;
		box-sizing: border-box !important;
	}

	.woocommerce-account .epc-auth-forms input.input-text,
	.woocommerce-account .epc-auth-forms select,
	.woocommerce-account .epc-auth-forms textarea {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 58px !important;
		padding: 0 18px !important;
		border-radius: 18px !important;
		box-sizing: border-box !important;
		background: #f7fcff !important;
		text-align: right !important;
		direction: rtl !important;
	}

	.woocommerce-account .epc-auth-forms input[type="email"],
	.woocommerce-account .epc-auth-forms input[type="password"] {
		padding-left: 70px !important;
		text-align: left !important;
		direction: ltr !important;
	}

	.woocommerce-account .epc-password-wrap {
		display: block !important;
		width: 100% !important;
	}

	.woocommerce-account .epc-password-toggle {
		left: 10px !important;
		right: auto !important;
		top: 50% !important;
		transform: translateY(-50%);
	}

	.woocommerce-account .woocommerce-form-login__rememberme {
		display: inline-flex !important;
		align-items: center;
		gap: 8px;
	}

	.woocommerce-account .epc-auth-tabs {
		position: sticky;
		top: 8px;
		z-index: 5;
		margin: 0 0 12px !important;
	}

	.woocommerce-account .epc-auth-forms button.button,
	.woocommerce-account .epc-auth-forms input.button {
		width: 100% !important;
		min-height: 56px !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card {
		position: relative;
		flex: 0 0 min(82%, 330px) !important;
		min-height: 156px !important;
		padding: 22px !important;
		border: 1px solid rgba(255, 255, 255, .18) !important;
		background:
			radial-gradient(circle at 12% 20%, rgba(98, 228, 255, .34), transparent 30%),
			linear-gradient(145deg, rgba(9, 106, 203, .96), rgba(3, 18, 50, .98)) !important;
		color: #fff !important;
		box-shadow: 0 24px 60px rgba(0, 18, 58, .32) !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card::before {
		inset: auto 16px 12px auto !important;
		width: auto !important;
		height: auto !important;
		background: none !important;
		color: rgba(255, 255, 255, .1) !important;
		content: attr(data-stage-title) !important;
		font-size: 64px !important;
		font-weight: 950 !important;
		line-height: 1 !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card strong,
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em {
		color: #fff !important;
		text-shadow: 0 10px 26px rgba(0, 12, 35, .28);
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em {
		color: rgba(255, 255, 255, .82) !important;
	}

	.epc-legal-page,
	.epc-not-found-page {
		width: calc(100% - 24px);
		margin: 72px auto 96px;
		padding: 26px;
		border-radius: 26px;
	}

	.epc-not-found-page__actions {
		display: grid;
	}
}

@media (max-width: 430px) {
	.woocommerce-account .entry-content > .woocommerce {
		padding: 0 10px !important;
	}

	.woocommerce-account .epc-auth-shell {
		padding: 10px !important;
		border-radius: 24px !important;
	}

	.woocommerce-account .epc-auth-copy,
	.woocommerce-account .epc-auth-forms form.login,
	.woocommerce-account .epc-auth-forms form.register {
		padding: 18px !important;
		border-radius: 22px !important;
	}
}

/* Launch QA fixes: purchase journey and lesson/course mobile surfaces. */
.epc-mobile-course-cta,
.epc-mobile-curriculum,
.epc-lesson-mobile-title {
	display: none;
}

.epc-mobile-menu-toggle {
	display: none !important;
}

.epc-course-sales__teacher {
	display: block;
	margin: -6px 0 12px;
	color: rgba(255, 255, 255, .88);
	font-size: 18px;
	font-weight: 900;
}

@media (max-width: 768px) {
	.single-epc_course .entry-header,
	.single-epc_course .page-header,
	.single-epc_course .post-thumb,
	.single-epc_lesson .entry-header,
	.single-epc_lesson .page-header,
	.single-epc_lesson .post-thumb,
	.woocommerce-order-received .entry-header,
	.woocommerce-checkout .entry-header {
		display: none !important;
	}

	.epc-auth-shell--purchase {
		margin-top: 0 !important;
	}

	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-hero,
	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-box > h2,
	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-box > p {
		display: none !important;
	}

	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-content,
	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-shell,
	.woocommerce-account .entry-content:has(.epc-auth-shell--purchase) .mma-account-box {
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		border: 0 !important;
	}

	.woocommerce-account .epc-auth-shell--purchase .epc-auth-copy {
		min-height: 0 !important;
		padding: 16px !important;
	}

	.woocommerce-account .epc-auth-shell--purchase .epc-auth-copy h1 {
		font-size: 30px !important;
	}

	.woocommerce-account .epc-auth-shell--purchase .epc-auth-copy > p {
		display: none !important;
	}

	.woocommerce-account .epc-auth-course-summary {
		margin-top: 12px !important;
		padding: 14px !important;
		border-radius: 18px !important;
		background: rgba(255, 255, 255, .14) !important;
	}

	.woocommerce-account .epc-auth-course-summary strong {
		font-size: 18px !important;
		line-height: 1.35 !important;
	}

	.woocommerce-account .epc-auth-course-summary span {
		display: inline-flex;
		width: fit-content;
		margin-top: 6px;
		border-radius: 999px;
		padding: 7px 12px;
		background: #fff;
		color: #0566bc !important;
	}

	.epc-course-sales {
		padding-bottom: 112px !important;
	}

	.epc-course-sales__hero {
		padding: 20px 14px 18px !important;
	}

	.epc-course-sales__hero h1 {
		margin: 8px 0 !important;
		font-size: clamp(30px, 9vw, 42px) !important;
		line-height: 1.16 !important;
	}

	.epc-course-sales__teacher {
		color: rgba(255, 255, 255, .9);
		font-size: 15px;
	}

	.epc-course-sales__hero p {
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		font-size: 15px !important;
	}

	.epc-course-sales .epc-stats {
		display: flex !important;
		overflow-x: auto;
		grid-template-columns: none !important;
		gap: 8px;
		margin: 14px 0 !important;
	}

	.epc-course-sales .epc-stat {
		flex: 0 0 auto;
		min-width: 118px;
		padding: 12px !important;
	}

	.epc-mobile-course-cta {
		position: fixed;
		right: 10px;
		bottom: max(10px, env(safe-area-inset-bottom));
		left: 10px;
		z-index: 90;
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 10px;
		align-items: center;
		border: 1px solid rgba(255, 255, 255, .18);
		border-radius: 22px;
		padding: 10px;
		background: rgba(4, 18, 45, .94);
		box-shadow: 0 22px 60px rgba(0, 14, 42, .36);
		backdrop-filter: blur(14px);
	}

	.epc-mobile-course-cta strong {
		color: #fff;
		font-size: 17px;
		font-weight: 950;
		white-space: nowrap;
	}

	.epc-mobile-course-cta .epc-btn {
		min-height: 48px;
		width: 100% !important;
	}

	.epc-course-sales aside .epc-course-box {
		display: none;
	}

	.epc-lesson-app {
		padding-bottom: 88px !important;
	}

	.epc-lesson-topbar {
		gap: 8px !important;
		margin-bottom: 10px;
	}

	.epc-lesson-mobile-title {
		display: block;
		margin: 8px 0 12px;
		color: #06142e;
		font-size: clamp(26px, 7vw, 34px);
		font-weight: 950;
		line-height: 1.25;
	}

	.epc-lesson-panel .epc-lesson-title {
		display: none;
	}

	.epc-lesson-main {
		display: flex;
		flex-direction: column;
	}

	.epc-lesson-video,
	.epc-protected-video {
		order: -3;
		width: 100% !important;
	}

	.epc-mobile-curriculum {
		order: -2;
		display: block;
		margin: 0 0 12px;
		border: 1px solid rgba(7, 102, 181, .14);
		border-radius: 20px;
		padding: 0;
		background: #f4fbff;
	}

	.epc-mobile-curriculum summary {
		min-height: 48px;
		padding: 14px 16px;
		color: #075da9;
		font-weight: 950;
		cursor: pointer;
	}

	.epc-mobile-curriculum .epc-course-outline {
		padding: 0 14px 14px;
	}

	.epc-lesson-sidebar {
		display: none !important;
	}

	.epc-lesson-actions {
		grid-template-columns: 1fr !important;
	}

	.epc-lesson-actions .epc-btn,
	.epc-complete-lesson-form .epc-btn {
		min-height: 48px !important;
	}

	.woocommerce-checkout .woocommerce {
		max-width: 100% !important;
		border-radius: 24px !important;
	}

	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
		display: grid !important;
		grid-template-columns: 1fr !important;
	}

	.woocommerce-checkout-review-order-table,
	.woocommerce-checkout-payment,
	.epc-order-success {
		border-radius: 22px !important;
	}

	.epc-certificate-verify h2 + h2,
	.epc-certificate-verify .entry-title {
		display: none !important;
	}

	.epc-certificate-verify input,
	.epc-certificate-verify button {
		width: 100% !important;
		min-height: 52px !important;
	}

	.epc-public-footer {
		padding-bottom: calc(72px + env(safe-area-inset-bottom)) !important;
	}

	.epc-mobile-menu-toggle {
		display: inline-grid !important;
		place-items: center;
		width: 44px;
		height: 44px;
		padding: 0;
		border: 0;
		border-radius: 16px;
		background: linear-gradient(135deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .08));
		color: #fff;
		font-size: 20px;
		font-weight: 950;
		line-height: 1;
		box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card--soon small,
	.epc-stage-card--soon small {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: fit-content !important;
		min-width: 96px;
		min-height: 40px;
		border-radius: 999px;
		padding: 9px 18px;
		background: #e8f8ff !important;
		color: #063f8f !important;
		font-size: 17px !important;
		font-weight: 950 !important;
		line-height: 1.1 !important;
		text-shadow: none !important;
		box-shadow: inset 0 0 0 1px rgba(0, 99, 189, .12), 0 10px 24px rgba(0, 20, 60, .14);
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card--soon em,
	.epc-stage-card--soon em {
		display: none !important;
	}
}

/* Final stage cards cleanup: readable subject/status badges everywhere. */
.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card,
.epc-stage-grid .epc-stage-card,
.maged-v3-stage-grid .epc-stage-card {
	gap: 12px;
	padding-bottom: 30px !important;
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
.epc-stage-grid .epc-stage-card small,
.maged-v3-stage-grid .epc-stage-card small {
	position: relative;
	z-index: 5;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: fit-content !important;
	min-width: 96px;
	min-height: 40px;
	margin-top: 8px !important;
	border-radius: 999px;
	padding: 9px 18px;
	background: #e8f8ff !important;
	color: #063f8f !important;
	font-size: 17px !important;
	font-weight: 950 !important;
	line-height: 1.1 !important;
	text-shadow: none !important;
	box-shadow: inset 0 0 0 1px rgba(0, 99, 189, .14), 0 12px 26px rgba(0, 20, 60, .16);
}

.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em,
.epc-stage-grid .epc-stage-card em,
.maged-v3-stage-grid .epc-stage-card em {
	right: auto !important;
	left: 24px !important;
	bottom: 24px !important;
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	background: rgba(7, 22, 45, .92) !important;
	color: #fff !important;
	font-size: 17px !important;
}

@media (max-width: 768px) {
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card,
	.epc-stage-grid .epc-stage-card,
	.maged-v3-stage-grid .epc-stage-card {
		min-height: 168px !important;
		padding: 22px 22px 24px !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card strong,
	.epc-stage-grid .epc-stage-card strong,
	.maged-v3-stage-grid .epc-stage-card strong {
		padding-left: 56px;
		font-size: clamp(24px, 6.2vw, 31px) !important;
		line-height: 1.25 !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
	.epc-stage-grid .epc-stage-card small,
	.maged-v3-stage-grid .epc-stage-card small {
		min-width: 102px;
		min-height: 42px;
		font-size: 18px !important;
	}
}

/* 0.6.4 final responsive polish: keep stage badges visible and cards balanced. */
.epc-stage-card,
.maged-v3-stage-grid .epc-stage-card {
	direction: rtl;
	text-align: right;
}

.epc-stage-card small,
.maged-v3-stage-grid .epc-stage-card small {
	align-self: flex-start !important;
	white-space: nowrap !important;
}

.woocommerce-account .show-password-input {
	display: none !important;
}

.epc-password-toggle {
	min-width: 48px !important;
	min-height: 38px !important;
}

@media (max-width: 768px) {
	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid,
	.maged-v3-stage-grid,
	.epc-stage-grid {
		display: grid !important;
		grid-template-columns: 1fr !important;
		width: 100% !important;
		max-width: 100% !important;
		overflow: visible !important;
		gap: 16px !important;
		padding: 0 !important;
		scroll-snap-type: none !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card,
	.maged-v3-stage-grid .epc-stage-card,
	.epc-stage-grid .epc-stage-card {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 176px !important;
		padding: 22px 22px 76px !important;
		border: 1px solid rgba(255, 255, 255, .18) !important;
		border-radius: 28px !important;
		background:
			radial-gradient(circle at 12% 75%, rgba(4, 119, 223, .12), transparent 24%),
			linear-gradient(135deg, #f7fcff 0%, #dff2fb 100%) !important;
		color: #06142e !important;
		box-shadow: 0 20px 48px rgba(0, 20, 60, .22) !important;
		scroll-snap-align: unset !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card::before,
	.maged-v3-stage-grid .epc-stage-card::before,
	.epc-stage-grid .epc-stage-card::before {
		top: 18px !important;
		right: auto !important;
		left: 22px !important;
		bottom: auto !important;
		z-index: 0 !important;
		width: auto !important;
		height: auto !important;
		background: none !important;
		color: rgba(4, 119, 223, .10) !important;
		font-size: clamp(48px, 15vw, 72px) !important;
		line-height: 1 !important;
		pointer-events: none !important;
		content: attr(data-stage-title) !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card span,
	.maged-v3-stage-grid .epc-stage-card span,
	.epc-stage-grid .epc-stage-card span {
		top: 22px !important;
		right: 22px !important;
		left: auto !important;
		width: 54px !important;
		height: 54px !important;
		border-radius: 18px !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card strong,
	.maged-v3-stage-grid .epc-stage-card strong,
	.epc-stage-grid .epc-stage-card strong {
		z-index: 2 !important;
		margin: 70px 0 0 !important;
		padding: 0 !important;
		color: #06142e !important;
		font-size: clamp(28px, 7.2vw, 34px) !important;
		text-shadow: none !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card small,
	.maged-v3-stage-grid .epc-stage-card small,
	.epc-stage-grid .epc-stage-card small {
		position: absolute !important;
		right: 22px !important;
		bottom: 20px !important;
		left: auto !important;
		z-index: 4 !important;
		min-width: 104px !important;
		min-height: 44px !important;
		margin: 0 !important;
		background: #ffffff !important;
		color: #0477df !important;
		font-size: 18px !important;
		text-shadow: none !important;
		box-shadow: 0 14px 30px rgba(4, 119, 223, .18), inset 0 0 0 1px rgba(4, 119, 223, .14) !important;
	}

	.epc-standalone-marketing .maged-v3 .maged-v3-stage-grid .epc-stage-card em,
	.maged-v3-stage-grid .epc-stage-card em,
	.epc-stage-grid .epc-stage-card em {
		left: 22px !important;
		right: auto !important;
		bottom: 22px !important;
		z-index: 4 !important;
	}

	.epc-catalog-filters {
		width: calc(100% - 20px) !important;
		margin: -36px auto 24px !important;
		padding: 10px !important;
		border-radius: 24px !important;
	}

	.epc-catalog-filters a {
		min-height: 46px !important;
		padding: 10px 16px !important;
		font-size: 14px !important;
	}

.epc-course-card__footer .epc-btn,
	.epc-course-card__footer a,
	.epc-auth-forms button,
	.epc-auth-forms input[type="submit"] {
		min-height: 52px !important;
	}
}

.epc-footer-credit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	color: rgba(255, 255, 255, .72) !important;
	font-size: 14px;
	font-weight: 800;
}

.epc-footer-credit b {
	color: #8eeaff;
	font-weight: 950;
	letter-spacing: .02em;
}

.epc-mobile-menu-auth {
	display: none !important;
}

/* 0.6.7 account journey: one form at a time, with clear login/register switching. */
.woocommerce-account .epc-auth-forms .u-columns {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 18px !important;
	width: min(620px, 100%) !important;
	margin: 0 auto !important;
	direction: rtl !important;
}

.woocommerce-account .epc-auth-forms .u-column1,
.woocommerce-account .epc-auth-forms .u-column2 {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="login"] .u-column2,
.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="register"] .u-column1 {
	display: none !important;
}

.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="login"] .epc-auth-switch__button--login,
.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="register"] .epc-auth-switch__button:not(.epc-auth-switch__button--login) {
	display: none !important;
}

.epc-auth-switch {
	display: grid;
	gap: 10px;
}

.epc-auth-switch__button {
	display: grid;
	width: 100%;
	min-height: 86px;
	border: 1px solid rgba(4, 119, 223, .14);
	border-radius: 24px;
	padding: 18px 20px;
	background:
		radial-gradient(circle at 12% 20%, rgba(37, 217, 255, .2), transparent 28%),
		linear-gradient(135deg, #f5fbff, #ffffff);
	color: #06142e;
	text-align: right;
	cursor: pointer;
	box-shadow: 0 16px 38px rgba(7, 22, 45, .08);
}

.epc-auth-switch__button span {
	color: #52708c;
	font-size: 14px;
	font-weight: 850;
}

.epc-auth-switch__button strong {
	color: #0477df;
	font-size: 21px;
	font-weight: 950;
}

.woocommerce-account .epc-auth-forms form.login,
.woocommerce-account .epc-auth-forms form.register {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	text-align: right !important;
	direction: rtl !important;
}

.woocommerce-account .epc-auth-forms .woocommerce-form-login,
.woocommerce-account .epc-auth-forms .woocommerce-form-register {
	box-sizing: border-box !important;
}

.maged-v3-login.epc-auth-action--logout,
.epc-shell-cta.epc-auth-action--logout {
	background: linear-gradient(135deg, #fff, #dff8ff);
	color: #063272;
}

@media (max-width: 768px) {
	.maged-v3-nav,
	.epc-shell-nav {
		grid-template-columns: 1fr auto !important;
	}

	.maged-v3-login,
	.epc-shell-cta {
		display: none !important;
	}

	.maged-v3-nav:not(.is-menu-open) .maged-v3-login,
	.epc-shell-nav:not(.is-menu-open) .epc-shell-cta {
		display: none !important;
	}

	.maged-v3-nav.is-menu-open .maged-v3-login,
	.epc-shell-nav.is-menu-open .epc-shell-cta {
		display: none !important;
	}

	.maged-v3-menu .epc-mobile-menu-auth,
	.epc-shell-links .epc-mobile-menu-auth {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		min-height: 48px !important;
		border-radius: 16px !important;
		padding: 12px 14px !important;
		background: linear-gradient(135deg, #ffffff, #dff8ff) !important;
		color: #063272 !important;
		font-size: 15px !important;
		font-weight: 950 !important;
		text-align: center !important;
		box-shadow: 0 14px 30px rgba(0, 30, 80, .18) !important;
	}

	.woocommerce-account .epc-auth-forms .u-columns {
		width: 100% !important;
	}

	.epc-auth-switch__button {
		min-height: 78px;
		border-radius: 22px;
		padding: 16px 18px;
	}

	.epc-auth-switch__button strong {
		font-size: 19px;
	}
}

/* 0.6.8 UX cleanup sprint: compact app surfaces and remove duplicate chrome. */
.site-footer,
.site-below-footer-wrap,
.site-primary-footer-wrap,
.site-above-footer-wrap {
	display: none !important;
}

.single-epc_course .entry-header,
.single-epc_course .page-header,
.single-epc_course .post-thumb,
.single-epc_lesson .entry-header,
.single-epc_lesson .page-header,
.single-epc_lesson .post-thumb,
.page-id-11 .entry-header,
.woocommerce-account .entry-header,
.page-template-default .entry-header:has(+ .entry-content .epc-contact-page),
.page-template-default .entry-header:has(+ .entry-content .epc-student-dashboard),
.page-template-default .entry-header:has(+ .entry-content .epc-certificate-verify) {
	display: none !important;
}

.woocommerce-account .site-content {
	background: linear-gradient(180deg, #f3f9ff, #ffffff) !important;
}

.woocommerce-account .ast-container,
.single-epc_course .ast-container,
.single-epc_lesson .ast-container,
.page:has(.epc-contact-page) .ast-container,
.page:has(.epc-student-dashboard) .ast-container,
.page:has(.epc-certificate-verify) .ast-container {
	max-width: 1180px !important;
	padding-right: 18px !important;
	padding-left: 18px !important;
}

.woocommerce-account .mma-account-hero,
.woocommerce-account .mma-account-box > h2,
.woocommerce-account .mma-account-box > p,
.woocommerce-account .mma-account-actions {
	display: none !important;
}

.woocommerce-account .mma-account-content,
.woocommerce-account .mma-account-shell,
.woocommerce-account .mma-account-box {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

.woocommerce-account .entry-content > .woocommerce,
.woocommerce-account .woocommerce {
	margin-top: clamp(18px, 4vw, 42px) !important;
}

.woocommerce-account .epc-auth-shell {
	grid-template-columns: minmax(260px, .65fr) minmax(360px, 1fr) !important;
	align-items: start !important;
	max-width: 980px !important;
	min-height: 0 !important;
	margin: 0 auto 54px !important;
	padding: 18px !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(7, 22, 45, .10) !important;
}

.woocommerce-account .epc-auth-copy {
	min-height: 0 !important;
	padding: 24px !important;
	border-radius: 24px !important;
}

.woocommerce-account .epc-auth-copy h1 {
	margin: 10px 0 8px !important;
	font-size: clamp(30px, 4vw, 42px) !important;
	line-height: 1.15 !important;
}

.woocommerce-account .epc-auth-copy p {
	margin: 0 !important;
	font-size: 15px !important;
	line-height: 1.75 !important;
}

.woocommerce-account .epc-auth-copy ul {
	display: none !important;
}

.woocommerce-account .epc-auth-forms .u-columns {
	width: min(560px, 100%) !important;
	gap: 14px !important;
}

.epc-auth-switch {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	order: -1;
	gap: 6px;
	margin: 0 0 4px !important;
	padding: 6px;
	border: 1px solid rgba(4, 119, 223, .12);
	border-radius: 999px;
	background: #eaf7ff;
}

.epc-auth-switch__button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 10px 14px !important;
	background: transparent !important;
	color: #075da9 !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	text-align: center !important;
	box-shadow: none !important;
}

.epc-auth-switch__button.is-active {
	background: #ffffff !important;
	color: #06142e !important;
	box-shadow: 0 10px 24px rgba(7, 22, 45, .10) !important;
}

.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="login"] .epc-auth-switch__button--login,
.woocommerce-account .epc-auth-forms .u-columns[data-auth-mode="register"] .epc-auth-switch__button--register {
	display: inline-flex !important;
}

.woocommerce-account .epc-auth-forms form.login,
.woocommerce-account .epc-auth-forms form.register {
	padding: 24px !important;
	border-radius: 24px !important;
	box-shadow: 0 12px 34px rgba(7, 22, 45, .08) !important;
}

.woocommerce-account .epc-auth-forms h2 {
	margin: 0 0 14px !important;
	font-size: clamp(25px, 3vw, 34px) !important;
	line-height: 1.2 !important;
}

.woocommerce-account .epc-auth-form-intro {
	margin-bottom: 16px !important;
	padding: 14px 16px !important;
	border-radius: 18px !important;
}

.woocommerce-account .epc-auth-form-intro p {
	margin: 4px 0 0 !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
}

.woocommerce-account .epc-auth-forms .form-row {
	margin-bottom: 14px !important;
}

.woocommerce-account .epc-auth-forms input.input-text,
.woocommerce-account .epc-auth-forms select,
.woocommerce-account .epc-auth-forms textarea,
.epc-contact-form input,
.epc-contact-form select,
.epc-contact-form textarea,
.epc-certificate-verify input {
	min-height: 54px !important;
	border-radius: 16px !important;
}

.epc-course-sales,
.epc-lesson-app,
.epc-student-dashboard,
.epc-contact-page,
.epc-certificate-verify {
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.epc-course-sales__hero {
	margin-top: 18px !important;
	border-radius: 28px !important;
	padding: clamp(22px, 4vw, 40px) !important;
}

.epc-course-sales__grid {
	grid-template-columns: minmax(0, 1fr) 320px !important;
	gap: 20px !important;
}

.epc-course-sales__hero .epc-course-sales__grid {
	grid-template-columns: minmax(0, 1fr) minmax(280px, 420px) !important;
	align-items: center !important;
}

.epc-course-sales__hero h1 {
	margin: 10px 0 6px !important;
	font-size: clamp(34px, 5vw, 56px) !important;
	line-height: 1.14 !important;
}

.epc-course-sales__hero p {
	max-width: 680px !important;
	margin: 10px 0 0 !important;
	line-height: 1.75 !important;
}

.epc-course-sales__hero > .epc-course-sales__grid > div:first-child > .epc-btn {
	margin-top: 14px !important;
}

.epc-course-sales .epc-panel {
	padding: 22px !important;
	border-radius: 22px !important;
	box-shadow: 0 12px 34px rgba(7, 22, 45, .06) !important;
}

.epc-course-sales aside .epc-panel {
	display: none !important;
}

.epc-course-box {
	position: sticky;
	top: 92px;
	border-radius: 22px !important;
	box-shadow: 0 14px 36px rgba(7, 22, 45, .08) !important;
}

.epc-lesson-app {
	padding-top: 18px !important;
}

.epc-lesson-topbar {
	margin-bottom: 14px !important;
}

.epc-lesson-layout {
	grid-template-columns: minmax(0, 1fr) 300px !important;
	gap: 18px !important;
}

.epc-lesson-panel,
.epc-lesson-sidebar {
	border-radius: 22px !important;
	padding: 20px !important;
	box-shadow: 0 12px 34px rgba(7, 22, 45, .06) !important;
}

.epc-lesson-title {
	margin-top: 0 !important;
	font-size: clamp(28px, 4vw, 42px) !important;
	line-height: 1.2 !important;
}

.epc-lesson-video,
.epc-protected-video {
	margin-top: 0 !important;
	aspect-ratio: 16 / 9;
}

.epc-tabs {
	display: flex !important;
	gap: 8px !important;
	overflow-x: auto;
	padding-bottom: 6px;
}

.epc-tab {
	flex: 0 0 auto;
	min-height: 42px;
	border-radius: 999px !important;
	padding: 10px 14px !important;
}

.epc-contact-page .epc-contact-hero,
.epc-certificate-verify > h1:first-child,
.epc-student-dashboard .epc-dashboard-hero {
	margin-top: 18px !important;
}

@media (max-width: 768px) {
	.woocommerce-account .site-content,
	.single-epc_course .site-content,
	.single-epc_lesson .site-content,
	.page:has(.epc-contact-page) .site-content,
	.page:has(.epc-student-dashboard) .site-content {
		padding-top: 0 !important;
	}

	.woocommerce-account .ast-container,
	.single-epc_course .ast-container,
	.single-epc_lesson .ast-container,
	.page:has(.epc-contact-page) .ast-container,
	.page:has(.epc-student-dashboard) .ast-container,
	.page:has(.epc-certificate-verify) .ast-container {
		padding-right: 10px !important;
		padding-left: 10px !important;
	}

	.woocommerce-account .entry-content > .woocommerce,
	.woocommerce-account .woocommerce {
		margin-top: 12px !important;
	}

	.woocommerce-account .epc-auth-shell {
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		margin-bottom: 34px !important;
		padding: 10px !important;
		border-radius: 24px !important;
	}

	.woocommerce-account .epc-auth-copy {
		width: 100% !important;
		padding: 16px !important;
		border-radius: 20px !important;
		text-align: right !important;
	}

	.woocommerce-account .epc-auth-copy h1 {
		font-size: 30px !important;
	}

	.woocommerce-account .epc-auth-copy p {
		font-size: 14px !important;
	}

	.woocommerce-account .epc-auth-forms form.login,
	.woocommerce-account .epc-auth-forms form.register {
		padding: 18px !important;
		border-radius: 22px !important;
	}

	.woocommerce-account .epc-auth-forms h2 {
		font-size: 28px !important;
	}

	.epc-course-sales,
	.epc-lesson-app,
	.epc-student-dashboard,
	.epc-contact-page,
	.epc-certificate-verify {
		width: 100% !important;
	}

	.epc-course-sales__grid,
	.epc-course-sales__hero .epc-course-sales__grid,
	.epc-lesson-layout {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	.epc-course-sales__hero {
		margin-top: 12px !important;
		padding: 18px !important;
		border-radius: 24px !important;
	}

	.epc-course-sales__hero h1 {
		font-size: clamp(30px, 8vw, 38px) !important;
	}

	.epc-course-sales__hero p {
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		font-size: 14px !important;
	}

	.epc-course-sales__hero > .epc-course-sales__grid > div:first-child > .epc-btn {
		display: none !important;
	}

	.epc-course-sales__media img,
	.epc-course-sales__media {
		max-height: 310px !important;
	}

	.epc-mobile-course-cta {
		bottom: max(10px, env(safe-area-inset-bottom)) !important;
	}

	.epc-lesson-app {
		padding-top: 12px !important;
		padding-bottom: 36px !important;
	}

	.epc-lesson-topbar {
		display: flex !important;
		gap: 8px !important;
		margin-bottom: 10px !important;
	}

	.epc-lesson-mobile-title {
		margin: 8px 0 12px !important;
		font-size: clamp(26px, 7vw, 32px) !important;
	}

	.epc-lesson-panel {
		padding: 16px !important;
	}

	.epc-lesson-content {
		font-size: 15px !important;
		line-height: 1.8 !important;
	}

	.epc-lesson-actions {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	.epc-lesson-actions .epc-btn,
	.epc-complete-lesson-form .epc-btn {
		min-height: 46px !important;
		padding: 10px 12px !important;
		font-size: 13px !important;
	}

	.epc-public-footer {
		padding: 28px 16px 34px !important;
	}

	.epc-public-footer nav {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px 12px !important;
		width: 100%;
		max-width: 340px;
		margin: 12px auto !important;
	}

	.epc-public-footer a {
		min-height: 34px;
		font-size: 13px !important;
	}
}

/* 0.6.9 lesson/course polish from QA screenshots. */
.epc-lesson-layout,
.epc-course-sales__grid {
	align-items: start !important;
}

.epc-lesson-main {
	display: grid !important;
	align-content: start !important;
	gap: 14px !important;
}

.epc-lesson-main > * {
	margin-top: 0 !important;
}

.epc-lesson-panel {
	align-self: start !important;
}

.epc-course-sales__media {
	align-self: stretch !important;
}

.epc-course-sales__media img {
	object-fit: cover !important;
}

@media (min-width: 769px) {
	.epc-lesson-app {
		padding-top: 44px !important;
		padding-bottom: 54px !important;
	}

	.epc-lesson-layout {
		min-height: 0 !important;
	}

	.epc-lesson-panel {
		margin-top: 0 !important;
	}
}

@media (max-width: 768px) {
	.epc-course-sales {
		padding-bottom: 86px !important;
	}

	.epc-mobile-course-cta {
		right: 12px !important;
		left: 12px !important;
		grid-template-columns: auto minmax(0, 1fr) !important;
		padding: 8px !important;
		border-radius: 18px !important;
	}

	.epc-mobile-course-cta strong {
		min-width: 42px;
		font-size: 14px !important;
		text-align: center;
	}

	.epc-tabs {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		overflow: visible !important;
		gap: 8px !important;
	}

	.epc-tab {
		justify-content: center;
		min-width: 0 !important;
		width: 100%;
		min-height: 44px !important;
		text-align: center;
	}
}

/* 0.7.0 semantic cleanup: keep one visible page title and remove theme duplicate banners. */
.woocommerce-account .ast-single-entry-banner,
.woocommerce-account .entry-header,
.woocommerce-account .page-header,
.woocommerce-account .ast-archive-description,
body.single-epc_course .ast-single-entry-banner,
body.single-epc_course .entry-header,
body.single-epc_course .page-header,
body.single-epc_course .ast-archive-description,
body.single-epc_lesson .ast-single-entry-banner,
body.single-epc_lesson .entry-header,
body.single-epc_lesson .page-header,
body.single-epc_lesson .ast-archive-description {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.epc-course-sales__title,
.epc-lesson-title,
.epc-lesson-mobile-title,
.epc-auth-copy h2 {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-weight: 950;
	letter-spacing: -.04em;
	line-height: 1.08;
}

.epc-course-sales__title {
	max-width: 820px;
	font-size: clamp(38px, 5.6vw, 78px);
}

.epc-lesson-title,
.epc-lesson-mobile-title {
	font-size: clamp(28px, 4.4vw, 54px);
}

.epc-auth-copy h2 {
	max-width: 720px;
	font-size: clamp(34px, 4.5vw, 68px);
}

@media (max-width: 640px) {
	.epc-course-sales__title {
		font-size: clamp(31px, 10vw, 43px);
	}

	.epc-lesson-title,
	.epc-lesson-mobile-title {
		font-size: clamp(25px, 8vw, 34px);
	}

	.epc-auth-copy h2 {
		font-size: clamp(28px, 9vw, 38px);
	}
}

html,
body {
	overflow-x: hidden !important;
}

/* 0.7.5 dedicated teacher profile page, app-style instead of article layout. */
.maged-v3-about {
	min-height: 100vh;
	background:
		radial-gradient(circle at 10% 12%, rgba(37, 217, 255, .2), transparent 30%),
		linear-gradient(180deg, #06142e 0%, #0a4d99 42%, #edf8ff 42%, #ffffff 100%);
}

.maged-v3-about-hero,
.maged-v3-about-grid,
.maged-v3-about-cta {
	width: min(1180px, calc(100% - 32px));
	margin-inline: auto;
}

.maged-v3-about-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.06fr) minmax(320px, .94fr);
	gap: clamp(24px, 4vw, 58px);
	align-items: center;
	padding: clamp(58px, 8vw, 110px) 0 clamp(44px, 7vw, 84px);
	color: #ffffff;
}

.maged-v3-about-hero__copy h1 {
	max-width: 820px;
	margin: 16px 0 18px;
	color: #ffffff;
	font-size: clamp(42px, 6vw, 84px);
	font-weight: 950;
	line-height: 1.05;
	letter-spacing: -.055em;
}

.maged-v3-about-hero__copy p {
	max-width: 640px;
	margin: 0 0 24px;
	color: rgba(255, 255, 255, .82);
	font-size: clamp(17px, 1.8vw, 22px);
	line-height: 1.9;
}

.maged-v3-about-hero__media {
	position: relative;
	border-radius: 42px;
	padding: 10px;
	background: rgba(255, 255, 255, .16);
	box-shadow: 0 28px 90px rgba(0, 10, 35, .34);
	overflow: hidden;
}

.maged-v3-about-hero__media::before {
	content: "";
	position: absolute;
	inset: -20%;
	background: var(--maged-cover, none) center/cover no-repeat;
	opacity: .3;
	filter: blur(8px);
	transform: scale(1.08);
}

.maged-v3-about-hero__media img {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 34px;
}

.maged-v3-about-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	padding: 0 0 clamp(36px, 6vw, 72px);
}

.maged-v3-about-grid article {
	border: 1px solid rgba(4, 119, 223, .13);
	border-radius: 32px;
	padding: clamp(22px, 3vw, 34px);
	background:
		radial-gradient(circle at 12% 12%, rgba(37, 217, 255, .14), transparent 32%),
		#ffffff;
	box-shadow: 0 22px 60px rgba(7, 22, 45, .08);
}

.maged-v3-about-grid span,
.maged-v3-about-cta span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 6px 12px;
	border-radius: 999px;
	background: #e8f9ff;
	color: #0477df;
	font-weight: 950;
	font-size: 13px;
}

.maged-v3-about-grid h2,
.maged-v3-about-cta h2 {
	margin: 18px 0 10px;
	color: #06142e;
	font-size: clamp(24px, 2.8vw, 36px);
	font-weight: 950;
	line-height: 1.18;
}

.maged-v3-about-grid p {
	margin: 0;
	color: #53657a;
	font-size: 16px;
	line-height: 1.9;
}

.maged-v3-about-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: clamp(48px, 7vw, 92px);
	border-radius: 38px;
	padding: clamp(24px, 4vw, 42px);
	background:
		linear-gradient(135deg, rgba(6, 20, 46, .94), rgba(4, 119, 223, .88)),
		var(--maged-cover, none) center/cover no-repeat;
	color: #ffffff;
	box-shadow: 0 30px 80px rgba(4, 58, 123, .2);
}

.maged-v3-about-cta h2 {
	max-width: 660px;
	color: #ffffff;
}

.maged-v3-about-cta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 0 24px;
	border-radius: 999px;
	background: linear-gradient(135deg, #1fb8ff, #25d9ff);
	color: #06142e;
	font-weight: 950;
	text-decoration: none;
	white-space: nowrap;
}

@media (max-width: 900px) {
	.maged-v3-about-hero,
	.maged-v3-about-grid {
		grid-template-columns: 1fr;
	}

	.maged-v3-about-cta {
		align-items: stretch;
		flex-direction: column;
	}
}

@media (max-width: 640px) {
	.maged-v3-about {
		background:
			radial-gradient(circle at 0 10%, rgba(37, 217, 255, .22), transparent 34%),
			linear-gradient(180deg, #06142e 0%, #0a4d99 36%, #edf8ff 36%, #ffffff 100%);
	}

	.maged-v3-about-hero,
	.maged-v3-about-grid,
	.maged-v3-about-cta {
		width: min(100% - 20px, 1180px);
	}

	.maged-v3-about-hero {
		padding: 28px 0 34px;
		gap: 18px;
	}

	.maged-v3-about-hero__copy h1 {
		font-size: clamp(34px, 11vw, 46px);
	}

	.maged-v3-about-hero__copy p {
		font-size: 16px;
		line-height: 1.8;
	}

	.maged-v3-about-hero__media,
	.maged-v3-about-hero__media img {
		border-radius: 28px;
	}

	.maged-v3-about-grid {
		gap: 12px;
		padding-bottom: 28px;
	}

	.maged-v3-about-grid article,
	.maged-v3-about-cta {
		border-radius: 26px;
		padding: 20px;
	}

	.maged-v3-about-cta {
		margin-bottom: 42px;
	}

	.maged-v3-about-cta a {
		width: 100%;
	}
}

/* 0.7.6 rebuild teacher page after visual review: calmer profile, full image, cleaner mobile. */
.maged-v3-about {
	background:
		radial-gradient(circle at 8% 10%, rgba(37, 217, 255, .18), transparent 30%),
		linear-gradient(180deg, #071832 0%, #0b376b 38%, #f3fbff 38%, #ffffff 100%) !important;
}

.maged-v3-about .maged-v3-nav {
	margin-bottom: 0 !important;
}

.maged-v3-about-hero {
	grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr) !important;
	min-height: auto !important;
	padding: clamp(42px, 6vw, 78px) 0 clamp(34px, 5vw, 64px) !important;
}

.maged-v3-about-hero__copy {
	position: relative;
	z-index: 2;
}

.maged-v3-about-hero__copy h1 {
	max-width: 640px !important;
	margin: 14px 0 14px !important;
	color: #ffffff !important;
	font-size: clamp(46px, 5.2vw, 76px) !important;
	line-height: 1.02 !important;
	letter-spacing: -.045em !important;
}

.maged-v3-about-hero__copy p {
	max-width: 620px !important;
	color: rgba(255, 255, 255, .84) !important;
	font-size: clamp(17px, 1.45vw, 21px) !important;
	line-height: 1.9 !important;
}

.maged-v3-about-points {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 22px 0 24px;
}

.maged-v3-about-points span {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 8px 14px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	background: rgba(255, 255, 255, .1);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	backdrop-filter: blur(12px);
}

.maged-v3-about .maged-v3-actions {
	margin-top: 0 !important;
}

.maged-v3-about-hero__media {
	border: 1px solid rgba(255, 255, 255, .2) !important;
	border-radius: 34px !important;
	padding: 12px !important;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .06)),
		rgba(255, 255, 255, .1) !important;
	box-shadow: 0 26px 80px rgba(0, 12, 36, .28) !important;
}

.maged-v3-about-hero__media::before {
	display: none !important;
}

.maged-v3-about-hero__media img {
	aspect-ratio: 16 / 10 !important;
	object-fit: contain !important;
	object-position: center center !important;
	border-radius: 24px !important;
	background: linear-gradient(135deg, #064eaf, #12c3ef) !important;
}

.maged-v3-about-grid {
	margin-top: -10px !important;
}

.maged-v3-about-grid article {
	border-radius: 28px !important;
	padding: clamp(22px, 2.6vw, 30px) !important;
	background: linear-gradient(180deg, #ffffff, #f4fbff) !important;
	box-shadow: 0 18px 42px rgba(4, 36, 77, .08) !important;
}

.maged-v3-about-grid h2 {
	font-size: clamp(22px, 2.2vw, 30px) !important;
}

.maged-v3-about-grid p {
	color: #56677d !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

.maged-v3-about-cta {
	border-radius: 30px !important;
	background:
		linear-gradient(135deg, rgba(5, 22, 48, .94), rgba(0, 116, 210, .88)),
		var(--maged-cover, none) center/cover no-repeat !important;
}

@media (max-width: 900px) {
	.maged-v3-about-hero {
		grid-template-columns: 1fr !important;
	}

	.maged-v3-about-hero__media {
		max-width: 620px;
		margin-inline: auto;
	}
}

@media (max-width: 640px) {
	.maged-v3-about {
		background:
			radial-gradient(circle at 0 5%, rgba(37, 217, 255, .18), transparent 32%),
			linear-gradient(180deg, #071832 0%, #0b3e78 42%, #f3fbff 42%, #ffffff 100%) !important;
	}

	.maged-v3-about .maged-v3-nav {
		width: calc(100% - 20px) !important;
		min-height: 58px !important;
		margin: 10px auto 0 !important;
		padding: 8px 10px !important;
	}

	.maged-v3-about-hero {
		width: calc(100% - 20px) !important;
		padding: 28px 0 26px !important;
		gap: 18px !important;
		text-align: right !important;
	}

	.maged-v3-about-hero__copy h1 {
		max-width: 100% !important;
		font-size: clamp(42px, 13vw, 54px) !important;
		line-height: 1.04 !important;
	}

	.maged-v3-about-hero__copy p {
		font-size: 16px !important;
		line-height: 1.75 !important;
	}

	.maged-v3-about-points {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 7px;
		margin: 18px 0;
	}

	.maged-v3-about-points span {
		justify-content: center;
		min-height: 38px;
		padding: 7px 6px;
		font-size: 12px;
		text-align: center;
	}

	.maged-v3-about .maged-v3-actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.maged-v3-about-hero__media {
		width: 100% !important;
		padding: 8px !important;
		border-radius: 24px !important;
	}

	.maged-v3-about-hero__media img {
		aspect-ratio: 16 / 10 !important;
		border-radius: 18px !important;
	}

	.maged-v3-about-grid {
		width: calc(100% - 20px) !important;
		gap: 12px !important;
		margin-top: 0 !important;
		padding-bottom: 26px !important;
	}

	.maged-v3-about-grid article {
		border-radius: 22px !important;
		padding: 18px !important;
	}

	.maged-v3-about-grid h2 {
		margin: 14px 0 8px !important;
		font-size: 23px !important;
	}

	.maged-v3-about-grid p {
		font-size: 15px !important;
		line-height: 1.75 !important;
	}

	.maged-v3-about-cta {
		width: calc(100% - 20px) !important;
		border-radius: 24px !important;
		padding: 20px !important;
		margin-bottom: 34px !important;
	}
}

body.single-epc_course .ast-breadcrumbs-wrapper,
body.single-epc_course .ast-breadcrumbs,
body.single-epc_course .breadcrumb,
body.single-epc_course .breadcrumbs,
body.single-epc_course .rank-math-breadcrumb,
body.single-epc_course .yoast-breadcrumb,
body.single-epc_lesson .ast-breadcrumbs-wrapper,
body.single-epc_lesson .ast-breadcrumbs,
body.single-epc_lesson .breadcrumb,
body.single-epc_lesson .breadcrumbs,
body.single-epc_lesson .rank-math-breadcrumb,
body.single-epc_lesson .yoast-breadcrumb {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.epc-lesson-video--placeholder {
	position: relative;
	display: grid;
	place-items: center;
	aspect-ratio: 16 / 9;
	min-height: 220px;
	border: 1px solid rgba(23, 178, 232, .22);
	border-radius: 28px;
	background:
		radial-gradient(circle at 18% 18%, rgba(38, 224, 255, .28), transparent 28%),
		linear-gradient(135deg, #071a3a, #0d58ad 58%, #17c2f1);
	color: #ffffff;
	text-align: center;
	box-shadow: 0 22px 56px rgba(2, 18, 45, .18);
	overflow: hidden;
}

.epc-lesson-video--placeholder::before {
	content: "";
	position: absolute;
	inset: 18px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 22px;
	pointer-events: none;
}

.epc-lesson-video--placeholder span {
	position: relative;
	display: inline-flex;
	margin-bottom: 8px;
	padding: 8px 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .16);
	font-size: 13px;
	font-weight: 900;
}

.epc-lesson-video--placeholder strong {
	position: relative;
	display: block;
	max-width: 420px;
	padding-inline: 20px;
	font-size: clamp(20px, 3vw, 34px);
	font-weight: 950;
	line-height: 1.35;
}

@media (max-width: 640px) {
	.epc-lesson-video--placeholder {
		min-height: 190px;
		border-radius: 22px;
	}

	.epc-lesson-video--placeholder strong {
		font-size: 20px;
	}
}
