/**
 * Single Course Page — Modern Premium Styles
 *
 * File: masterstudy-child/inc/pages/courses/courses-single.css
 * v2.0.0 — Full redesign with gradient hero, glassmorphism,
 *          layered shadows, entrance animations.
 *
 * Targets custom .moyo-cd wrapper classes AND MasterStudy
 * inner component classes for compatibility.
 *
 * Depends on: moyo-brand.css, moyo-courses-archive.css
 *
 * Sections:
 *   0. Global wrapper
 *   1. Gradient hero
 *   2. Main 2-column layout
 *   3. Tabs override (MasterStudy)
 *   4. Curriculum accordion override
 *   5. FAQ override
 *   6. Reviews override
 *   7. Sidebar
 *   8. Course details card
 *   9. Info boxes
 *  10. CTA / buy button
 *  11. Related courses
 *  12. Entrance animations
 *  13. Responsive (960px + 640px)
 */


/* ============================================================
   0. GLOBAL WRAPPER
   ============================================================ */

/* Reset MasterStudy's Bootstrap wrapper */
.stm-lms-wrapper {
	background: var(--moyo-bg, #f8f9fb) !important;
	padding: 0 !important;
	overflow-x: hidden;
}

.stm-lms-wrapper > .container {
	max-width: 100% !important;
	padding: 0 !important;
	width: 100% !important;
	overflow-x: hidden;
}

.moyo-cd p,
.moyo-cd li,
.masterstudy-single-course p,
.masterstudy-single-course li {
	color: var(--moyo-body, #334155) !important;
	font-size: 15px !important;
	line-height: 1.75 !important;
}

.moyo-cd a,
.masterstudy-single-course a {
	color: var(--moyo-primary, #2563eb) !important;
	text-decoration: none;
	transition: color 0.2s ease;
}

.moyo-cd a:hover,
.masterstudy-single-course a:hover {
	color: var(--moyo-primary-end, #3b82f6) !important;
}


/* ============================================================
   1. HERO BANNER — Centered, matches About page pattern
   ============================================================ */

.moyo-cd-hero {
	position: relative;
	width: 100vw;
	margin-left: calc(-50vw + 50%);
	overflow: hidden;
	box-sizing: border-box;
}

.moyo-cd-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: var(--moyo-hero-bg, #0c2340);
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 60px 60px;
}

.moyo-cd-hero__inner {
	position: relative;
	z-index: 1;
	max-width: var(--moyo-container-max, 1200px);
	margin: 0 auto;
	padding: 64px 40px 56px;
	text-align: center;
}

/* Breadcrumb */
.moyo-cd-hero__breadcrumb {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 24px;
	font-size: 13px;
	font-weight: 400;
}

.moyo-cd-hero__breadcrumb-link {
	color: rgba(255, 255, 255, 0.6) !important;
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	transition: color 0.2s;
}

.moyo-cd-hero__breadcrumb-link:hover {
	color: rgba(255, 255, 255, 1) !important;
}

.moyo-cd-hero__breadcrumb-link svg {
	width: 14px;
	height: 14px;
}

.moyo-cd-hero__breadcrumb-sep {
	display: inline-flex;
	align-items: center;
	color: rgba(255, 255, 255, 0.3) !important;
}

.moyo-cd-hero__breadcrumb-sep svg {
	width: 12px;
	height: 12px;
}

.moyo-cd-hero__breadcrumb-current {
	color: rgba(255, 255, 255, 0.9) !important;
	font-weight: 500;
}

/* Hero title */
.moyo-cd-hero__title {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 36px !important;
	font-weight: 600;
	line-height: 1.15 !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	margin: 0 0 16px !important;
	letter-spacing: -0.5px;
}

/* Hero subtitle */
.moyo-cd-hero__subtitle {
	font-size: 16px !important;
	font-weight: 400;
	line-height: 1.7 !important;
	color: rgba(255, 255, 255, 0.7) !important;
	margin: 0 auto !important;
	max-width: 620px;
}

/* Hero entrance animation */
@keyframes moyoCdHeroFadeUp {
	from { opacity: 0; transform: translateY(20px); }
	to   { opacity: 1; transform: translateY(0); }
}

.moyo-cd-hero__breadcrumb { animation: moyoCdHeroFadeUp 0.6s ease 0.1s both; }
.moyo-cd-hero__title      { animation: moyoCdHeroFadeUp 0.6s ease 0.25s both; }
.moyo-cd-hero__subtitle   { animation: moyoCdHeroFadeUp 0.6s ease 0.4s both; }


/* ============================================================
   1a. BADGES ROW — Duration pill + category + status badge
   ============================================================ */

.moyo-cd__badges-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	padding: 16px 24px;
	margin-bottom: 0;
	background: var(--moyo-card, #ffffff);
	border-radius: var(--moyo-radius-lg, 8px) var(--moyo-radius-lg, 8px) 0 0;
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-bottom: none;
}

.moyo-cd__duration-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	background: var(--moyo-info-bg, #eff6ff);
	color: var(--moyo-info-text, #1e40af) !important;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif);
	font-size: 13px;
	font-weight: 600;
	border-radius: 20px;
	border: 1px solid var(--moyo-info-border, #bfdbfe);
	line-height: 1;
	white-space: nowrap;
}

.moyo-cd__duration-badge svg {
	flex-shrink: 0;
	color: var(--moyo-primary, #2563eb);
}

.moyo-cd__category-badge {
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	background: var(--moyo-bg-alt, #f0f3f7);
	color: var(--moyo-heading, #1e293b) !important;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif);
	font-size: 13px;
	font-weight: 500;
	border-radius: 20px;
	border: 1px solid var(--moyo-border, #e5e7eb);
	text-decoration: none !important;
	line-height: 1;
	white-space: nowrap;
	transition: all var(--moyo-transition, 0.2s ease);
}

.moyo-cd__category-badge:hover {
	background: var(--moyo-primary, #2563eb);
	color: var(--moyo-on-primary, #ffffff) !important;
	border-color: var(--moyo-primary, #2563eb);
}

.moyo-cd__status-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 12px;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	border-radius: 4px;
	line-height: 1;
	white-space: nowrap;
}


/* ============================================================
   1b. INSTRUCTOR META ROW — Split card design
   ============================================================ */

.moyo-cd__meta {
	display: flex;
	align-items: stretch;
	gap: 0;
	flex-wrap: wrap;
	padding: 0;
	margin-bottom: 24px;
	background: var(--moyo-bg, #f8fafc);
	border: 1px solid var(--moyo-border, #e2e5ea);
	border-radius: 10px;
	overflow: hidden;
}

/* Each meta section separated by vertical divider */
.moyo-cd__instructor,
.moyo-cd__stat,
.moyo-cd__stars {
	display: flex;
	align-items: center;
	padding: 16px 20px;
	border-right: 1px solid var(--moyo-border, #e2e5ea);
}

.moyo-cd__instructor:last-child,
.moyo-cd__stat:last-child,
.moyo-cd__stars:last-child {
	border-right: none;
}

/* Instructor */
.moyo-cd__instructor {
	gap: 12px;
	flex: 1;
	min-width: 180px;
}

.moyo-cd__avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--moyo-primary, #2563eb);
	color: var(--moyo-on-primary, #ffffff) !important;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	font-weight: 600;
	flex-shrink: 0;
}

.moyo-cd__instructor-label {
	font-size: 10px;
	color: var(--moyo-muted, #94a3b8) !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-weight: 600;
	margin-bottom: 2px;
}

.moyo-cd__instructor-name {
	font-size: 14px;
	font-weight: 600;
	color: var(--moyo-heading, #0f172a) !important;
	line-height: 1.3;
}

/* Student count — with avatar circles */
.moyo-cd__stat {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 24px;
}

.moyo-cd__enrolled-avatars {
	display: flex;
	margin-right: 2px;
}

.moyo-cd__enrolled-avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 600;
	color: #ffffff;
	border: 2px solid var(--moyo-card, #ffffff);
	margin-left: -6px;
}

.moyo-cd__enrolled-avatar:first-child {
	margin-left: 0;
}

.moyo-cd__stat-value {
	font-size: 16px;
	font-weight: 700;
	color: var(--moyo-heading, #0f172a) !important;
	display: block;
	line-height: 1.2;
}

.moyo-cd__stat-label {
	font-size: 10px;
	color: var(--moyo-muted, #94a3b8) !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-weight: 500;
}

/* Rating stars */
.moyo-cd__stars {
	gap: 3px;
	padding: 14px 20px;
}

.moyo-cd__stars svg {
	width: 16px;
	height: 16px;
}

.moyo-cd__stars-score {
	font-size: 15px;
	font-weight: 700;
	color: var(--moyo-heading, #0f172a) !important;
	margin-left: 6px;
}

.moyo-cd__stars-count {
	font-size: 11px;
	color: var(--moyo-muted, #94a3b8) !important;
	margin-left: 2px;
}


/* ============================================================
   1c. WORKING HOURS CARD — Sidebar
   ============================================================ */

.moyo-cd__hours-card {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e2e5ea);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.04);
}

.moyo-cd__hours-header {
	background: linear-gradient(135deg, var(--moyo-primary, #2563eb), var(--moyo-primary-end, #3b82f6));
	padding: 20px 24px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.moyo-cd__hours-icon {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.moyo-cd__hours-icon svg {
	width: 20px;
	height: 20px;
	color: var(--moyo-on-primary, #ffffff);
}

.moyo-cd__hours-heading {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 16px !important;
	font-weight: 700;
	color: var(--moyo-on-primary, #ffffff) !important;
	margin: 0 !important;
}

.moyo-cd__hours-subtitle {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.7) !important;
	margin-top: 2px;
}

.moyo-cd__hours-body {
	padding: 8px 0;
}

.moyo-cd__hours-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 24px;
	transition: background 0.15s;
}

.moyo-cd__hours-row:hover {
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.03);
}

.moyo-cd__hours-row + .moyo-cd__hours-row {
	border-top: 1px solid var(--moyo-border-light, #f1f3f5);
}

.moyo-cd__hours-row--today {
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.05);
	border-left: 3px solid var(--moyo-primary, #2563eb);
	padding-left: 21px;
}

.moyo-cd__hours-day {
	font-size: 14px;
	font-weight: 500;
	color: var(--moyo-body, #334155) !important;
	display: flex;
	align-items: center;
	gap: 8px;
}

.moyo-cd__hours-row--today .moyo-cd__hours-day {
	font-weight: 600;
	color: var(--moyo-heading, #0f172a) !important;
}

.moyo-cd__hours-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--moyo-success, #22c55e);
	animation: moyoPulse 2s ease infinite;
}

@keyframes moyoPulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.5; transform: scale(0.8); }
}

.moyo-cd__hours-time {
	font-size: 14px;
	font-weight: 600;
	color: var(--moyo-heading, #0f172a) !important;
}

.moyo-cd__hours-closed {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--moyo-on-primary, #ffffff) !important;
	background: linear-gradient(135deg, var(--moyo-error, #ef4444), #dc2626);
	padding: 4px 12px;
	border-radius: 20px;
}


/* ============================================================
   2. MAIN 2-COLUMN LAYOUT
   ============================================================ */

.moyo-cd {
	max-width: var(--moyo-container-max, 1200px);
	margin: 0 auto;
	padding: 40px 24px 80px;
	display: grid;
	grid-template-columns: 1fr 360px;
	gap: 48px;
	align-items: start;
}

/* Main content area — white card for contrast */
.moyo-cd__main {
	background: var(--moyo-card, #ffffff);
	border-radius: var(--moyo-radius-lg, 8px);
	padding: 32px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04), 0 4px 16px rgba(0, 0, 0, 0.03);
}


/* ============================================================
   3. TABS — Override MasterStudy tab styling
   Actual classes: .masterstudy-single-course-tabs (ul)
     > .masterstudy-single-course-tabs__item (li)
     > .masterstudy-single-course-tabs__item_active (active)
   Content: .masterstudy-single-course-tabs__content
     > .masterstudy-single-course-tabs__container
     > .masterstudy-single-course-tabs__container_active
   ============================================================ */

.moyo-cd__tabs-wrap {
	margin-bottom: 8px;
}

/* Tab bar (the <ul>) */
.moyo-cd__tabs-wrap .masterstudy-single-course-tabs {
	display: flex !important;
	gap: 0 !important;
	border-bottom: 2px solid var(--moyo-border, #e2e5ea) !important;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.moyo-cd__tabs-wrap .masterstudy-single-course-tabs::-webkit-scrollbar {
	display: none;
}

/* Individual tab item */
.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__item {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 15px !important;
	font-weight: 500;
	color: var(--moyo-muted, #6b7280) !important;
	background: none !important;
	border: none !important;
	border-bottom: 2.5px solid transparent !important;
	padding: 14px 22px !important;
	margin-bottom: -2px !important;
	cursor: pointer;
	white-space: nowrap;
	transition: color 0.2s, border-color 0.2s;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__item:hover {
	color: var(--moyo-heading, #0f172a) !important;
}

/* Active tab */
.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__item_active {
	color: var(--moyo-primary, #2563eb) !important;
	border-bottom-color: var(--moyo-primary, #2563eb) !important;
	font-weight: 700;
}

/* Tab content panel */
.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__content {
	padding-top: 28px;
}

/* Active panel */
.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__container {
	display: none;
}

.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__container_active {
	display: block;
}


/* ============================================================
   4. CURRICULUM ACCORDION — Premium styling
   Actual classes:
     .masterstudy-curriculum-list
       .masterstudy-curriculum-list__wrapper
         .masterstudy-curriculum-list__section (header)
           .masterstudy-curriculum-list__section-title (text)
           .masterstudy-curriculum-list__toggler (chevron)
         ul.masterstudy-curriculum-list__materials
           li.masterstudy-curriculum-list__item
             a.masterstudy-curriculum-list__link
               .masterstudy-curriculum-list__order
               img.masterstudy-curriculum-list__image
               .masterstudy-curriculum-list__title
               .masterstudy-curriculum-list__meta
   ============================================================ */

/* Module wrapper — card style */
.moyo-cd .masterstudy-curriculum-list__wrapper {
	border: 1px solid var(--moyo-border, #e2e5ea) !important;
	border-radius: var(--moyo-radius-lg, 8px) !important;
	margin-bottom: 10px !important;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

/* Section header (module title bar) */
.moyo-cd .masterstudy-curriculum-list__section {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	background: var(--moyo-bg-alt, #f0f3f7) !important;
	padding: 16px 20px !important;
	cursor: pointer;
	transition: background 0.2s;
}

.moyo-cd .masterstudy-curriculum-list__section:hover {
	background: var(--moyo-bg-alt-hover, #e8ecf1) !important;
}

/* Section title text */
.moyo-cd .masterstudy-curriculum-list__section-title {
	color: var(--moyo-heading, #0f172a) !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 15px !important;
	font-weight: 600;
	margin: 0 !important;
}

/* Toggler chevron */
.moyo-cd .masterstudy-curriculum-list__toggler {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	transition: transform 0.3s;
}

/* Materials list */
.moyo-cd .masterstudy-curriculum-list__materials {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-top: 1px solid var(--moyo-border, #e2e5ea);
}

/* Individual lesson item */
.moyo-cd .masterstudy-curriculum-list__item {
	border-bottom: 1px solid var(--moyo-border-light, #f1f3f5);
}

.moyo-cd .masterstudy-curriculum-list__item:last-child {
	border-bottom: none;
}

/* Lesson link row */
.moyo-cd .masterstudy-curriculum-list__link {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	padding: 14px 20px !important;
	text-decoration: none !important;
	transition: background 0.15s;
}

.moyo-cd .masterstudy-curriculum-list__link:hover {
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.03);
}

/* Lesson number */
.moyo-cd .masterstudy-curriculum-list__order {
	width: 28px;
	font-size: 13px !important;
	font-weight: 600;
	color: var(--moyo-muted, #6b7280) !important;
	text-align: center;
	flex-shrink: 0;
}

/* Lesson type icon */
.moyo-cd .masterstudy-curriculum-list__image {
	width: 28px !important;
	height: 28px !important;
	padding: 6px;
	border-radius: 50%;
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.1) !important;
	flex-shrink: 0;
}

/* Lesson title */
.moyo-cd .masterstudy-curriculum-list__title {
	color: var(--moyo-heading, #0f172a) !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 14px !important;
	font-weight: 500;
	margin: 0 !important;
}

/* Lesson meta (duration, type label) */
.moyo-cd .masterstudy-curriculum-list__meta {
	color: var(--moyo-muted, #6b7280) !important;
	font-size: 12px !important;
	font-weight: 500;
	background: var(--moyo-bg-alt, #f0f3f7);
	padding: 3px 10px;
	border-radius: var(--moyo-radius, 4px);
	white-space: nowrap;
}

/* Preview / Trial badges */
.moyo-cd .masterstudy-curriculum-list__preview,
.moyo-cd .masterstudy-curriculum-list__trial {
	font-size: 11px !important;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--moyo-primary, #2563eb) !important;
}


/* ============================================================
   5. FAQ — Override MasterStudy FAQ styling
   ============================================================ */

/* FAQ container */
.moyo-cd .masterstudy-single-course-faq {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* FAQ item card */
.moyo-cd .masterstudy-single-course-faq__item {
	border: 1px solid var(--moyo-border, #e5e7eb) !important;
	border-radius: 10px !important;
	background: var(--moyo-card, #ffffff);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	overflow: hidden;
}

.moyo-cd .masterstudy-single-course-faq__item:first-child {
	border-top: 1px solid var(--moyo-border, #e5e7eb) !important;
}

.moyo-cd .masterstudy-single-course-faq__item:hover {
	border-color: var(--moyo-primary, #2563eb) !important;
	box-shadow: 0 2px 8px rgba(37, 99, 235, 0.08);
}

/* Container wrapper — question + toggler aligned */
.moyo-cd .masterstudy-single-course-faq__container-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	padding: 16px 20px !important;
	cursor: pointer;
}

/* Question text */
.moyo-cd .masterstudy-single-course-faq__question {
	font-family: var(--moyo-font-body, 'Poppins', sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--moyo-heading, #0f172a) !important;
	padding: 0 !important;
	margin: 0 !important;
	flex: 1 !important;
	line-height: 1.4 !important;
}

.moyo-cd .masterstudy-single-course-faq__container-wrapper:hover .masterstudy-single-course-faq__question {
	color: var(--moyo-primary, #2563eb) !important;
}

/* Toggler icon — fixed size, properly aligned */
.moyo-cd .masterstudy-single-course-faq__answer-toggler {
	flex-shrink: 0 !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50% !important;
	background: var(--moyo-bg, #f3f4f6) !important;
	transition: background 0.2s ease, transform 0.3s ease !important;
}

.moyo-cd .masterstudy-single-course-faq__answer-toggler::before,
.moyo-cd .masterstudy-single-course-faq__answer-toggler::after {
	transition: transform 0.3s ease !important;
}

.moyo-cd .masterstudy-single-course-faq__container-wrapper:hover .masterstudy-single-course-faq__answer-toggler {
	background: rgba(37, 99, 235, 0.1) !important;
}

/* Answer area */
.moyo-cd .masterstudy-single-course-faq__answer {
	font-family: var(--moyo-font-body, 'Poppins', sans-serif) !important;
	font-size: 14px !important;
	color: var(--moyo-body, #475569) !important;
	line-height: 1.7 !important;
	padding: 0 20px 16px !important;
}

.moyo-cd .masterstudy-single-course-faq__answer-wrapper {
	padding-top: 0 !important;
	border-top: 1px solid var(--moyo-border, #e5e7eb);
	padding-top: 14px !important;
}


/* ============================================================
   6. REVIEWS — Premium review cards
   ============================================================ */

.moyo-cd .masterstudy-single-course-reviews,
.moyo-cd .stm_lms_course_reviews,
.moyo-cd .stm_lms_reviews {
	margin-top: 0;
	padding-top: 0;
	padding-bottom: 32px;
	border-top: none;
}

.moyo-cd .masterstudy-single-course-reviews h3,
.moyo-cd .stm_lms_course_reviews h3 {
	color: var(--moyo-heading, #0f172a) !important;
	font-family: var(--moyo-font-heading, 'Poppins'), sans-serif;
	font-size: 24px;
	font-weight: 700;
	margin: 0 0 24px;
}

/* ── Write Review button — modern style ── */
.moyo-cd .masterstudy-single-course-reviews__add-button {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 10px 20px !important;
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.06) !important;
	color: var(--moyo-primary, #2563eb) !important;
	border: none !important;
	border-radius: 10px !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	cursor: pointer;
	transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
	margin-bottom: 8px;
}

.moyo-cd .masterstudy-single-course-reviews__add-button:hover {
	background: var(--moyo-primary, #2563eb) !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.25);
}

.moyo-cd .masterstudy-single-course-reviews__add-button-icon {
	display: inline-block !important;
	width: 16px !important;
	height: 16px !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E") no-repeat center / 16px 16px !important;
	border-radius: 0 !important;
	border: none !important;
	flex-shrink: 0;
	margin: 0 !important;
	padding: 0 !important;
}

/* Hide MasterStudy's default icon font */
.moyo-cd .masterstudy-single-course-reviews__add-button-icon::before {
	display: none !important;
	content: none !important;
}

/* Swap icon to white on hover */
.moyo-cd .masterstudy-single-course-reviews__add-button:hover .masterstudy-single-course-reviews__add-button-icon {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E") no-repeat center / 16px 16px !important;
}

/* ══════════════════════════════════════════════
   REVIEW FORM — Modern glassmorphic card
   ══════════════════════════════════════════════ */
.moyo-cd .masterstudy-single-course-reviews__form {
	background: var(--moyo-card, #ffffff) !important;
	border: 1px solid var(--moyo-border, #e2e5ea) !important;
	border-style: solid !important;
	border-radius: 16px !important;
	padding: 0 !important;
	margin-top: 20px;
	margin-bottom: 28px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.05) !important;
	overflow: hidden;
}

/* ── Header ── */
.moyo-cd .masterstudy-single-course-reviews__form-header {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px 16px !important;
	border-bottom: none !important;
	background: none !important;
	margin: 0 !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-title {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: var(--moyo-heading, #0f172a) !important;
	letter-spacing: -0.2px;
}

/* Close — ghost circle */
.moyo-cd .masterstudy-single-course-reviews__form-close {
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	border-radius: 50% !important;
	background: transparent !important;
	border: 1.5px solid var(--moyo-border, #e2e5ea) !important;
	cursor: pointer;
	display: flex !important;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
}

.moyo-cd .masterstudy-single-course-reviews__form-close:hover {
	background: var(--moyo-bg, #f1f5f9) !important;
	border-color: var(--moyo-muted, #94a3b8) !important;
}

/* ── Star rating — large interactive stars ── */
.moyo-cd .masterstudy-single-course-reviews__form-rating {
	padding: 0 24px 20px !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 6px !important;
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
	width: auto !important;
	align-items: center;
}

.moyo-cd .masterstudy-single-course-reviews__form-rating::before {
	content: 'Rate this course' !important;
	display: inline-block !important;
	width: auto !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 13px;
	font-weight: 500;
	color: var(--moyo-muted, #94a3b8);
	margin-right: 12px;
	white-space: nowrap;
}

.moyo-cd .masterstudy-single-course-reviews__star {
	width: 32px !important;
	height: 32px !important;
	cursor: pointer;
	transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
}

.moyo-cd .masterstudy-single-course-reviews__star:hover {
	transform: scale(1.25);
}

/* ── Editor — modern styled ── */
.moyo-cd .masterstudy-single-course-reviews__form-editor {
	padding: 0 24px 20px !important;
}

/* Outer wrapper */
.moyo-cd .masterstudy-single-course-reviews__form-editor .masterstudy-wp-editor {
	width: 100% !important;
}

/* Editor wrap — rounded card */
.moyo-cd .masterstudy-single-course-reviews__form-editor .wp-editor-wrap {
	border: 1.5px solid var(--moyo-border, #e2e5ea) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
	background: var(--moyo-card, #ffffff) !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .wp-editor-wrap:focus-within {
	border-color: var(--moyo-primary, #2563eb) !important;
	box-shadow: 0 0 0 4px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.08) !important;
}

/* Editor container */
.moyo-cd .masterstudy-single-course-reviews__form-editor .wp-editor-container {
	border: none !important;
}

/* Toolbar — clean flat style */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-toolbar-grp,
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-top-part {
	background: var(--moyo-bg, #f8fafc) !important;
	border-bottom: 1px solid var(--moyo-border-light, #f1f5f9) !important;
	padding: 6px 8px !important;
}

/* Toolbar buttons — minimal */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-btn {
	background: transparent !important;
	border: none !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	transition: background 0.15s ease;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-btn:hover {
	background: var(--moyo-border, #e2e8f0) !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-btn.mce-active {
	background: var(--moyo-border, #e2e5ea) !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-btn i,
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-ico {
	color: var(--moyo-body, #475569) !important;
}

/* Format dropdown — clean */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-listbox {
	border: 1px solid var(--moyo-border, #e2e5ea) !important;
	border-radius: 6px !important;
	background: var(--moyo-card, #ffffff) !important;
	box-shadow: none !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-listbox button {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif !important;
	font-size: 12px !important;
	color: var(--moyo-body, #475569) !important;
}

/* Edit area */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-edit-area {
	border-top: none !important;
}

.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-edit-area iframe {
	min-height: 120px !important;
}

/* Word count / statusbar — subtle */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-statusbar,
.moyo-cd .masterstudy-single-course-reviews__form-editor .masterstudy-wp-editor__word-count {
	background: var(--moyo-bg, #f8fafc) !important;
	border-top: 1px solid var(--moyo-border-light, #f1f5f9) !important;
	padding: 4px 10px !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif !important;
	font-size: 11px !important;
	color: var(--moyo-muted, #94a3b8) !important;
}

/* Hide resize handle + WP editor tabs */
.moyo-cd .masterstudy-single-course-reviews__form-editor .mce-resizehandle,
.moyo-cd .masterstudy-single-course-reviews__form-editor .wp-editor-tabs {
	display: none !important;
}

/* ── Footer — submit + helper text ── */
.moyo-cd .masterstudy-single-course-reviews__form-actions {
	padding: 0 24px 24px !important;
	display: flex !important;
	justify-content: space-between;
	align-items: center;
}

/* Helper text before submit */
.moyo-cd .masterstudy-single-course-reviews__form-actions::before {
	content: 'Your review helps other learners';
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 12px;
	color: var(--moyo-muted, #94a3b8);
}

.moyo-cd .masterstudy-single-course-reviews__form-actions .masterstudy-button,
.moyo-cd .masterstudy-single-course-reviews__form-actions button,
.moyo-cd .masterstudy-single-course-reviews__form-actions input[type="submit"] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 10px 24px !important;
	background: var(--moyo-primary, #2563eb) !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	border: none !important;
	border-radius: 10px !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer;
	transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
	letter-spacing: 0 !important;
	text-transform: none !important;
	line-height: 1.4 !important;
	box-shadow: 0 2px 8px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.25);
}

.moyo-cd .masterstudy-single-course-reviews__form-actions .masterstudy-button:hover,
.moyo-cd .masterstudy-single-course-reviews__form-actions button:hover,
.moyo-cd .masterstudy-single-course-reviews__form-actions input[type="submit"]:hover {
	background: var(--moyo-primary-end, #1d4ed8) !important;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.3);
}

/* ── Form message (success/error) ── */
.moyo-cd .masterstudy-single-course-reviews__form-message {
	margin: 0;
	padding: 0 24px;
}

/* Rating bar chart */
.moyo-cd .masterstudy-single-course-reviews .review_summary,
.moyo-cd .stm_lms_review_breakdown {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 28px;
}

/* Rating bar fill — gradient */
.moyo-cd .masterstudy-single-course-reviews .bar .fill,
.moyo-cd .stm_lms_review_breakdown .bar .fill {
	background: linear-gradient(
		90deg,
		var(--moyo-primary, #2563eb),
		var(--moyo-primary-end, #3b82f6)
	) !important;
	border-radius: 4px;
	transition: width 0.6s ease;
}

/* Review cards */
.moyo-cd .masterstudy-single-course-reviews__item,
.moyo-cd .stm_lms_review_item,
.moyo-cd .review_card {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: var(--moyo-radius-lg, 8px);
	padding: 22px;
	margin-bottom: 14px;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.moyo-cd .masterstudy-single-course-reviews__item:hover,
.moyo-cd .stm_lms_review_item:hover,
.moyo-cd .review_card:hover {
	box-shadow: var(--moyo-shadow-md, 0 2px 8px rgba(0, 0, 0, 0.08));
	transform: translateY(-1px);
}

/* Review avatar */
.moyo-cd .masterstudy-single-course-reviews__item img,
.moyo-cd .stm_lms_review_item .review-header img {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 2px solid var(--moyo-border-light, #f3f4f6);
}

/* Review name */
.moyo-cd .masterstudy-single-course-reviews__item .name h5,
.moyo-cd .stm_lms_review_item .review-header .name h5 {
	color: var(--moyo-heading, #0f172a) !important;
	font-size: 15px !important;
	font-weight: 600;
}

/* Stars */
.moyo-cd .star-rating i,
.moyo-cd .average-rating-stars i {
	color: var(--moyo-star, #fbbf24) !important;
}

/* Hide default login text — replaced by moyo empty state */
.moyo-cd .masterstudy-single-course-reviews__login {
	display: none !important;
}

/* ── Reviews empty state ── */
.moyo-reviews-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 48px 24px;
	background: linear-gradient(135deg, rgba(99, 102, 241, 0.04) 0%, rgba(59, 130, 246, 0.06) 50%, rgba(16, 185, 129, 0.04) 100%);
	border: 1px dashed var(--moyo-border, #e5e7eb);
	border-radius: 16px;
	width: 100%;
}

/* Stacked avatars */
.moyo-reviews-empty__avatars {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.moyo-reviews-empty__avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--moyo-font-heading, 'Poppins', sans-serif);
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	border: 3px solid var(--moyo-card, #ffffff);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	margin-left: -12px;
	position: relative;
}

.moyo-reviews-empty__avatar:first-child {
	margin-left: 0;
}

.moyo-reviews-empty__avatar--plus {
	background: var(--moyo-bg, #f3f4f6) !important;
	color: var(--moyo-body, #475569);
}

/* Stars row */
.moyo-reviews-empty__stars {
	display: flex;
	gap: 4px;
	margin-bottom: 16px;
}

.moyo-reviews-empty__star-icon {
	width: 24px;
	height: 24px;
	color: var(--moyo-star, #fbbf24);
	opacity: 0.35;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon {
	opacity: 1;
}

.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon:nth-child(1) { transition-delay: 0s; }
.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon:nth-child(2) { transition-delay: 0.06s; }
.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon:nth-child(3) { transition-delay: 0.12s; }
.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon:nth-child(4) { transition-delay: 0.18s; }
.moyo-reviews-empty:hover .moyo-reviews-empty__star-icon:nth-child(5) { transition-delay: 0.24s; }

/* Title + description */
.moyo-reviews-empty__title {
	font-family: var(--moyo-font-heading, 'DM Serif Display', serif) !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	color: var(--moyo-heading, #1e293b) !important;
	margin: 0 0 8px !important;
	line-height: 1.3 !important;
}

.moyo-reviews-empty__desc {
	font-family: var(--moyo-font-body, 'Poppins', sans-serif) !important;
	font-size: 14px !important;
	color: var(--moyo-body, #475569) !important;
	line-height: 1.6 !important;
	margin: 0 0 24px !important;
	max-width: 360px;
}

/* CTA button */
.moyo-reviews-empty__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 26px;
	background: var(--moyo-primary, #2563eb) !important;
	color: #ffffff !important;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif);
	font-size: 13px;
	font-weight: 600;
	border-radius: 10px;
	text-decoration: none !important;
	transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
	box-shadow: 0 2px 10px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.25);
}

.moyo-reviews-empty__cta:hover {
	background: var(--moyo-primary-end, #1d4ed8) !important;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.3);
	color: #ffffff !important;
}

/* Override global .moyo-cd a color for this button */
.moyo-cd a.moyo-reviews-empty__cta,
.moyo-cd a.moyo-reviews-empty__cta:hover {
	color: #ffffff !important;
}

.moyo-reviews-empty__cta svg {
	stroke: currentColor;
}

/* Responsive */
@media (max-width: 640px) {
	.moyo-reviews-empty {
		padding: 36px 16px;
	}
	.moyo-reviews-empty__avatar {
		width: 38px;
		height: 38px;
		font-size: 14px;
	}
	.moyo-reviews-empty__title {
		font-size: 18px !important;
	}
	.moyo-reviews-empty__star-icon {
		width: 20px;
		height: 20px;
	}
}


/* ============================================================
   7. SIDEBAR — Glassmorphism accents + layered shadows
   ============================================================ */

.moyo-cd__sidebar {
	position: sticky;
	top: calc(var(--moyo-header-h, 70px) + 24px);
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Actions row: wishlist + share — centered */
.moyo-cd__actions {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 24px;
	padding: 12px 0;
}

.moyo-cd__actions .masterstudy-single-course-wishlist,
.moyo-cd__actions .masterstudy-single-course-share-button {
	font-size: 13px !important;
	color: var(--moyo-muted, #6b7280) !important;
	cursor: pointer;
	position: relative;
}

.moyo-cd__actions .masterstudy-single-course-wishlist__title,
.moyo-cd__actions .masterstudy-single-course-share-button__title {
	font-size: 13px !important;
	color: var(--moyo-muted, #6b7280) !important;
	transition: color 0.2s;
}

.moyo-cd__actions .masterstudy-single-course-wishlist:hover .masterstudy-single-course-wishlist__title,
.moyo-cd__actions .masterstudy-single-course-share-button:hover .masterstudy-single-course-share-button__title {
	color: var(--moyo-primary, #2563eb) !important;
}

.moyo-cd__actions a,
.moyo-cd__actions button,
.moyo-cd__actions > div {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
	background: none !important;
	border: none !important;
}

/* ── Share modal — styles injected via moyo-course-detail.js ──
   JS builds a custom #moyo-share overlay, removes MasterStudy's broken modal.
   No CSS needed here — all styles are in the JS-injected <style> tag. */

/* Hide MasterStudy's original share modal — replaced by #moyo-share in JS */
.masterstudy-single-course-share-button-modal {
	display: none !important;
}



/* ============================================================
   7d. FEATURED IMAGE — course thumbnail above tabs
   ============================================================ */

.moyo-cd__featured-img {
	border-radius: var(--moyo-radius-lg, 8px);
	overflow: hidden;
	margin-bottom: 24px;
	position: relative;
}

.moyo-cd__featured-img img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	max-height: 420px;
}

/* Placeholder when no thumbnail — gradient + book icon */
.moyo-cd__featured-img--placeholder {
	height: 280px;
	background: linear-gradient(135deg, #1e3a5f 0%, #2563eb 50%, #0ea5e9 100%);
}

.moyo-cd__featured-img--placeholder::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.25)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3Cline x1='12' y1='6' x2='12' y2='13'/%3E%3Cline x1='9' y1='9.5' x2='15' y2='9.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 64px 64px;
	pointer-events: none;
}


/* ============================================================
   7e. CERTIFICATE BADGE
   ============================================================ */

.moyo-cd__cert-badge {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px 18px;
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.06);
	border: 1px solid rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.15);
	border-radius: 100px;
	margin-bottom: 16px;
	color: var(--moyo-primary, #2563eb);
}

.moyo-cd__cert-badge svg {
	flex-shrink: 0;
}

.moyo-cd__cert-badge span {
	font-family: var(--moyo-font-body, 'Poppins', sans-serif) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--moyo-primary, #2563eb) !important;
}


/* ============================================================
   7f. COURSE DURATION BREAKDOWN TABLE
   ============================================================ */

.moyo-cd__duration-card {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: 12px;
	overflow: hidden;
	margin-top: 16px;
	margin-bottom: 16px;
	box-shadow: var(--moyo-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.moyo-cd__duration-header {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 20px;
	border-bottom: 1px solid var(--moyo-border, #e5e7eb);
	background: var(--moyo-bg, #f8fafc);
}

.moyo-cd__duration-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--moyo-info-bg, #eff6ff);
	color: var(--moyo-primary, #2563eb);
	flex-shrink: 0;
}

.moyo-cd__duration-icon svg {
	width: 18px;
	height: 18px;
}

.moyo-cd__duration-title {
	font-family: var(--moyo-font-heading, 'Poppins', sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--moyo-heading, #0f172a) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.moyo-cd__duration-table {
	display: flex;
	flex-direction: column;
}

.moyo-cd__duration-row {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 4px;
	padding: 12px 20px;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif);
	font-size: 13px;
	color: var(--moyo-body, #334155);
	border-bottom: 1px solid var(--moyo-border, #f1f5f9);
	transition: background 0.15s ease;
	white-space: nowrap;
}

.moyo-cd__duration-row:last-child {
	border-bottom: none;
}

.moyo-cd__duration-row:not(.moyo-cd__duration-row--header):hover {
	background: var(--moyo-bg, #f8fafc);
}

/* Active duration row — highlighted like Working Hours current day */
.moyo-cd__duration-row--active {
	background: rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.06) !important;
	border-left: 3px solid var(--moyo-primary, #2563eb);
	font-weight: 600;
	color: var(--moyo-heading, #1e293b) !important;
}
.moyo-cd__duration-row--active .moyo-cd__duration-plan {
	color: var(--moyo-primary, #2563eb) !important;
	font-weight: 700;
}
.moyo-cd__duration-row--active .moyo-cd__duration-total {
	color: var(--moyo-primary, #2563eb) !important;
	font-weight: 700;
}

.moyo-cd__duration-row--header {
	font-weight: 600;
	font-size: 11px;
	color: var(--moyo-muted, #94a3b8);
	text-transform: uppercase;
	letter-spacing: 0.8px;
	background: var(--moyo-bg, #f8fafc);
	padding: 10px 20px;
	border-bottom: 1px solid var(--moyo-border, #e5e7eb);
	white-space: nowrap;
}

.moyo-cd__duration-plan {
	font-weight: 600;
	color: var(--moyo-heading, #0f172a);
}

.moyo-cd__duration-total {
	font-weight: 700;
	color: var(--moyo-primary, #2563eb);
}


/* ============================================================
   8. COURSE DETAILS CARD — Premium glassmorphic card
   ============================================================ */

.moyo-cd__details-card {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: var(--moyo-radius-lg, 8px);
	overflow: hidden;
	box-shadow:
		0 1px 2px rgba(0, 0, 0, 0.04),
		0 4px 12px rgba(0, 0, 0, 0.04),
		0 8px 24px rgba(0, 0, 0, 0.03);
}

/* Details title */
.moyo-cd__details-card .masterstudy-single-course-details__title {
	display: block;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 16px !important;
	font-weight: 700;
	color: var(--moyo-heading, #0f172a) !important;
	padding: 20px 24px !important;
	border-bottom: 1px solid var(--moyo-border, #e5e7eb);
	margin: 0 !important;
}

/* Detail rows */
.moyo-cd__details-card .masterstudy-single-course-details__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 13px 24px;
	border-bottom: 1px solid var(--moyo-border-light, #f3f4f6);
}

.moyo-cd__details-card .masterstudy-single-course-details__item:last-child {
	border-bottom: none;
}

.moyo-cd__details-card .masterstudy-single-course-details__icon-wrapper {
	display: flex;
	align-items: center;
	gap: 10px;
}

.moyo-cd__details-card .masterstudy-single-course-details__icon {
	color: var(--moyo-primary, #2563eb) !important;
}

.moyo-cd__details-card .masterstudy-single-course-details__name {
	font-size: 14px !important;
	color: var(--moyo-body, #334155) !important;
	font-weight: 400;
}

.moyo-cd__details-card .masterstudy-single-course-details__quantity {
	font-size: 14px !important;
	font-weight: 600;
	color: var(--moyo-heading, #0f172a) !important;
}


/* ============================================================
   9. INFO BOXES — Requirements, Basic Info, Audience
   ============================================================ */

.moyo-cd__info-box {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: var(--moyo-radius-lg, 8px);
	padding: 0;
	overflow: hidden;
	box-shadow: var(--moyo-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.moyo-cd__info-box .masterstudy-single-course-info__title,
.moyo-cd__info-box h4 {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 15px !important;
	font-weight: 700;
	color: var(--moyo-heading, #0f172a) !important;
	padding: 16px 24px !important;
	margin: 0 !important;
	border-bottom: 1px solid var(--moyo-border, #e5e7eb);
}

.moyo-cd__info-box .masterstudy-single-course-info__content,
.moyo-cd__info-box ul {
	padding: 16px 24px !important;
	margin: 0 !important;
}

.moyo-cd__info-box li {
	font-size: 14px !important;
	padding: 6px 0 !important;
	border-bottom: 1px solid var(--moyo-border-light, #f3f4f6);
}

.moyo-cd__info-box li:last-child {
	border-bottom: none;
}


/* ============================================================
   10. CTA / BUY BUTTON — Premium gradient button
   ============================================================ */

.moyo-cd__cta {
	margin-bottom: 0;
}

/* Enroll Course button (non-logged-in — opens Apply Now modal) */
.moyo-cd__enroll-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	padding: 14px 20px !important;
	background: var(--moyo-primary, #2563eb) !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	font-family: var(--moyo-font-body, 'Poppins', sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	border: none !important;
	border-radius: 100px !important;
	cursor: pointer !important;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
	box-shadow: 0 2px 8px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.2) !important;
}

.moyo-cd__enroll-btn:hover {
	background: var(--moyo-primary-end, #1d4ed8) !important;
	box-shadow: 0 4px 14px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.35) !important;
	transform: translateY(-2px) !important;
}

/* MasterStudy buy button override — match mockup size */
.moyo-cd__cta .masterstudy-buy-button,
.moyo-cd__cta .stm_lms_buy_button_auth,
.moyo-cd__cta .masterstudy-buy-button__button,
.moyo-cd__cta a[class*="masterstudy-buy"],
.moyo-cd__sidebar .masterstudy-buy-button,
.moyo-cd__sidebar .masterstudy-buy-button__button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	padding: 12px 20px !important;
	background: var(--moyo-primary, #2563eb) !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 14px !important;
	font-weight: 600;
	text-transform: none !important;
	letter-spacing: 0 !important;
	border: none !important;
	border-radius: 100px !important;
	cursor: pointer;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
	box-shadow: 0 2px 8px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.2) !important;
	line-height: 1.4 !important;
	min-height: auto !important;
	height: auto !important;
}

.moyo-cd__cta .masterstudy-buy-button:hover,
.moyo-cd__cta .stm_lms_buy_button_auth:hover,
.moyo-cd__cta .masterstudy-buy-button__button:hover,
.moyo-cd__cta a[class*="masterstudy-buy"]:hover,
.moyo-cd__sidebar .masterstudy-buy-button:hover,
.moyo-cd__sidebar .masterstudy-buy-button__button:hover {
	transform: translateY(-2px) !important;
	box-shadow:
		0 4px 8px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.3),
		0 8px 24px rgba(var(--moyo-primary-rgb, 37, 99, 235), 0.2) !important;
}

/* Price display in sidebar */
.moyo-cd__sidebar .stm-lms-price .price,
.moyo-cd__sidebar .masterstudy-buy-button__price {
	color: var(--moyo-heading, #0f172a) !important;
	font-family: var(--moyo-font-heading, 'Poppins'), sans-serif;
	font-size: 32px !important;
	font-weight: 700;
}

.moyo-cd__sidebar .stm-lms-price del,
.moyo-cd__sidebar .masterstudy-buy-button__old-price {
	color: var(--moyo-muted, #64748b) !important;
	font-size: 16px !important;
	text-decoration: line-through;
	opacity: 0.6;
}

/* Free badge */
.moyo-cd__sidebar .stm_lms_free_badge,
.moyo-cd__sidebar .masterstudy-buy-button__free {
	background: linear-gradient(135deg, var(--moyo-success, #22c55e), var(--moyo-success-dark, #16a34a)) !important;
	color: var(--moyo-on-primary, #ffffff) !important;
	font-size: 14px !important;
	font-weight: 700;
	padding: 8px 20px !important;
	border-radius: var(--moyo-radius, 4px) !important;
	display: inline-block;
}


/* ============================================================
   11. RELATED COURSES — Grid with hover elevation
   ============================================================ */

.moyo-cd .masterstudy-single-course-related,
.moyo-cd .related_courses,
.moyo-cd .stm_lms_related_courses {
	margin-top: 56px;
	padding-top: 48px;
	border-top: 1px solid var(--moyo-border, #e5e7eb);
}

.moyo-cd .masterstudy-single-course-related h3,
.moyo-cd .related_courses h3 {
	color: var(--moyo-heading, #0f172a) !important;
	font-family: var(--moyo-font-heading, 'Poppins'), sans-serif;
	font-size: 26px;
	font-weight: 700;
	margin: 0 0 28px;
}

/* Related cards grid */
.moyo-cd .masterstudy-single-course-related .stm_lms_courses_grid,
.moyo-cd .related_courses .stm_lms_courses_grid,
.moyo-cd .related_courses .stm_lms_courses__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

/* Individual related card */
.moyo-cd .masterstudy-single-course-related .stm_lms_courses_col,
.moyo-cd .related_courses .stm_lms_courses_col,
.moyo-cd .related_courses .stm_lms_course_card {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: var(--moyo-radius-lg, 8px);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.moyo-cd .masterstudy-single-course-related .stm_lms_courses_col:hover,
.moyo-cd .related_courses .stm_lms_courses_col:hover,
.moyo-cd .related_courses .stm_lms_course_card:hover {
	transform: translateY(-6px);
	box-shadow:
		0 2px 4px rgba(0, 0, 0, 0.02),
		0 4px 8px rgba(0, 0, 0, 0.03),
		0 8px 16px rgba(0, 0, 0, 0.04),
		0 16px 32px rgba(0, 0, 0, 0.05);
}

/* Related card image */
.moyo-cd .related_courses img,
.moyo-cd .masterstudy-single-course-related img,
.moyo-cd .masterstudy-related-courses__image {
	width: 100%;
	height: 180px;
	object-fit: cover;
}

/* Related courses image wrapper — placeholder when no thumbnail */
.moyo-cd .masterstudy-related-courses__image-wrapper {
	display: block;
	position: relative;
	min-height: 160px;
	background: linear-gradient(135deg, #1e3a5f 0%, #2563eb 50%, #0ea5e9 100%);
	overflow: hidden;
}

.moyo-cd .masterstudy-related-courses__image-wrapper::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.25)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3Cline x1='12' y1='6' x2='12' y2='13'/%3E%3Cline x1='9' y1='9.5' x2='15' y2='9.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 48px 48px;
	pointer-events: none;
}

.moyo-cd .masterstudy-related-courses__image-wrapper img {
	position: relative;
	z-index: 1;
}

/* Hide broken img alt text / icon */
.moyo-cd .masterstudy-related-courses__image[src="#"],
.moyo-cd .masterstudy-related-courses__image[src=""] {
	opacity: 0;
}

/* Related courses list — grid layout */
.moyo-cd .masterstudy-related-courses__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.moyo-cd .masterstudy-related-courses__item {
	background: var(--moyo-card, #ffffff);
	border: 1px solid var(--moyo-border, #e5e7eb);
	border-radius: var(--moyo-radius-lg, 8px);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.moyo-cd .masterstudy-related-courses__item:hover {
	transform: translateY(-4px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.moyo-cd .masterstudy-related-courses__item-meta {
	padding: 14px 16px;
}

.moyo-cd .masterstudy-related-courses__item-title {
	font-size: 15px !important;
	font-weight: 600;
	color: var(--moyo-heading, #0f172a) !important;
	display: block;
	margin-bottom: 8px;
	line-height: 1.4;
}

.moyo-cd .masterstudy-related-courses__item-title:hover {
	color: var(--moyo-primary, #2563eb) !important;
}

.moyo-cd .masterstudy-related-courses__instructor {
	font-size: 13px !important;
	color: var(--moyo-muted, #6b7280) !important;
}

.moyo-cd .masterstudy-related-courses__title {
	font-family: var(--moyo-font-body, 'Poppins'), sans-serif;
	font-size: 20px !important;
	font-weight: 700;
	color: var(--moyo-heading, #0f172a) !important;
	margin: 0 0 20px !important;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--moyo-border, #e5e7eb);
}

/* Related card title */
.moyo-cd .related_courses h5 a,
.moyo-cd .masterstudy-single-course-related h5 a {
	color: var(--moyo-heading, #0f172a) !important;
	font-size: 16px !important;
	font-weight: 600;
}

.moyo-cd .related_courses h5 a:hover,
.moyo-cd .masterstudy-single-course-related h5 a:hover {
	color: var(--moyo-primary, #2563eb) !important;
}


/* ============================================================
   12. ENTRANCE ANIMATIONS
   ============================================================ */

@keyframes moyoCdFadeUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes moyoCdSlideIn {
	from {
		opacity: 0;
		transform: translateX(20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

/* Hero content entrance */
.moyo-cd-hero__inner > * {
	animation: moyoCdFadeUp 0.6s ease both;
}

.moyo-cd-hero__breadcrumb { animation-delay: 0s; }
.moyo-cd-hero__badge { animation-delay: 0.06s; }
.moyo-cd-hero__title { animation-delay: 0.12s; }
.moyo-cd-hero__excerpt { animation-delay: 0.18s; }
.moyo-cd-hero__meta { animation-delay: 0.24s; }

/* Sidebar entrance (slides from right) */
.moyo-cd__sidebar > * {
	animation: moyoCdSlideIn 0.5s ease both;
}

.moyo-cd__sidebar > *:nth-child(1) { animation-delay: 0.1s; }
.moyo-cd__sidebar > *:nth-child(2) { animation-delay: 0.18s; }
.moyo-cd__sidebar > *:nth-child(3) { animation-delay: 0.26s; }
.moyo-cd__sidebar > *:nth-child(4) { animation-delay: 0.34s; }
.moyo-cd__sidebar > *:nth-child(5) { animation-delay: 0.42s; }
.moyo-cd__sidebar > *:nth-child(6) { animation-delay: 0.50s; }

/* Main content entrance */
.moyo-cd__tabs-wrap {
	animation: moyoCdFadeUp 0.5s ease 0.2s both;
}

/* Scroll-reveal utility — applied by JS */
.moyo-cd-reveal {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity 0.5s ease, transform 0.5s ease;
}

.moyo-cd-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}


/* ============================================================
   13a. RESPONSIVE — 960px
   ============================================================ */

@media (max-width: 960px) {

	/* Hero */
	.moyo-cd-hero__inner { padding: 44px 20px 36px; }
	.moyo-cd-hero__title { font-size: 28px !important; }
	.moyo-cd-hero__subtitle { font-size: 14px !important; }

	/* Layout — single column */
	.moyo-cd {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px 16px 48px;
	}

	/* Sidebar comes FIRST on mobile (CTA, details, hours) */
	.moyo-cd__sidebar {
		position: static;
		order: -1;
		gap: 12px;
	}

	/* Main content below sidebar */
	.moyo-cd__main {
		order: 2;
		padding: 20px;
	}

	/* Meta row — wrap items */
	.moyo-cd__meta {
		gap: 0;
	}

	.moyo-cd__instructor,
	.moyo-cd__stat,
	.moyo-cd__stars {
		padding: 12px 16px;
	}

	.moyo-cd__instructor {
		min-width: 160px;
	}

	/* Featured image */
	.moyo-cd__featured-img img {
		max-height: 280px;
	}

	.moyo-cd__featured-img--placeholder {
		height: 180px;
	}

	/* CTA — compact */
	.moyo-cd__enroll-btn {
		padding: 12px 20px !important;
		font-size: 14px !important;
		border-radius: 8px !important;
	}

	.moyo-cd__cta .masterstudy-buy-button,
	.moyo-cd__cta .stm_lms_buy_button_auth,
	.moyo-cd__cta .masterstudy-buy-button__button,
	.moyo-cd__cta a[class*="masterstudy-buy"],
	.moyo-cd__sidebar .masterstudy-buy-button,
	.moyo-cd__sidebar .masterstudy-buy-button__button {
		padding: 12px 20px !important;
		font-size: 14px !important;
		border-radius: 8px !important;
	}

	/* Certificate badge — compact */
	.moyo-cd__cert-badge {
		padding: 8px 14px;
		margin-bottom: 8px;
	}

	.moyo-cd__cert-badge span {
		font-size: 13px !important;
	}

	/* Details card — compact */
	.moyo-cd__details-card .masterstudy-single-course-details__title {
		padding: 14px 18px !important;
		font-size: 15px !important;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__item {
		padding: 10px 18px;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__name,
	.moyo-cd__details-card .masterstudy-single-course-details__quantity {
		font-size: 13px !important;
	}

	/* Duration card — compact */
	.moyo-cd__duration-card {
		margin-top: 4px;
		margin-bottom: 4px;
	}

	.moyo-cd__duration-title {
		padding: 12px 16px !important;
		font-size: 14px !important;
	}

	/* Hours card — compact */
	.moyo-cd__hours-header {
		padding: 14px 18px;
	}

	.moyo-cd__hours-heading {
		font-size: 14px !important;
	}

	.moyo-cd__hours-row {
		padding: 9px 18px;
		font-size: 13px;
	}

	/* Info boxes — compact */
	.moyo-cd__info-box .masterstudy-single-course-info__title,
	.moyo-cd__info-box h4 {
		padding: 12px 18px !important;
		font-size: 14px !important;
	}

	.moyo-cd__info-box .masterstudy-single-course-info__content,
	.moyo-cd__info-box ul {
		padding: 12px 18px !important;
	}

	/* Actions row — compact */
	.moyo-cd__actions {
		padding: 6px 0;
		gap: 16px;
	}

	/* Price — smaller on tablet */
	.moyo-cd__sidebar .stm-lms-price .price,
	.moyo-cd__sidebar .masterstudy-buy-button__price {
		font-size: 26px !important;
	}

	/* Related — 2 columns */
	.moyo-cd .related_courses .stm_lms_courses_grid,
	.moyo-cd .related_courses .stm_lms_courses__grid,
	.moyo-cd .masterstudy-single-course-related .stm_lms_courses_grid,
	.moyo-cd .masterstudy-related-courses__list {
		grid-template-columns: repeat(2, 1fr);
	}
}


/* ============================================================
   13b. RESPONSIVE — 640px
   ============================================================ */

@media (max-width: 640px) {

	/* Hero — compact */
	.moyo-cd-hero__inner {
		padding: 28px 14px 22px;
	}

	.moyo-cd-hero__title {
		font-size: 22px !important;
		letter-spacing: -0.3px;
		margin-bottom: 8px !important;
	}

	.moyo-cd-hero__subtitle {
		font-size: 13px !important;
		line-height: 1.5 !important;
	}

	.moyo-cd-hero__breadcrumb {
		font-size: 11px;
		gap: 4px;
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 14px;
	}

	.moyo-cd-hero__breadcrumb-current {
		max-width: 180px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	/* Layout — tight spacing */
	.moyo-cd {
		padding: 14px 12px 36px;
		gap: 14px;
	}

	/* Main content — compact */
	.moyo-cd__main {
		padding: 14px;
		border-radius: 8px;
	}

	/* Sidebar — compact gap */
	.moyo-cd__sidebar {
		gap: 10px;
	}

	/* Badges row — compact */
	.moyo-cd__badges-row {
		padding: 12px 14px;
		gap: 8px;
	}

	.moyo-cd__duration-badge,
	.moyo-cd__category-badge {
		font-size: 12px;
		padding: 5px 10px;
	}

	/* Meta row — stack vertically with horizontal dividers */
	.moyo-cd__meta {
		flex-direction: column;
		gap: 0;
	}

	.moyo-cd__instructor,
	.moyo-cd__stat,
	.moyo-cd__stars {
		border-right: none !important;
		border-bottom: 1px solid var(--moyo-border, #e2e5ea);
		padding: 10px 14px;
		width: 100%;
		box-sizing: border-box;
	}

	.moyo-cd__instructor:last-child,
	.moyo-cd__stat:last-child,
	.moyo-cd__stars:last-child {
		border-bottom: none;
	}

	.moyo-cd__stat {
		gap: 8px;
	}

	.moyo-cd__enrolled-avatar {
		width: 24px;
		height: 24px;
		font-size: 10px;
	}

	.moyo-cd__stat-value {
		font-size: 14px !important;
	}

	.moyo-cd__avatar {
		width: 32px;
		height: 32px;
		font-size: 13px;
	}

	.moyo-cd__instructor-name {
		font-size: 13px !important;
	}

	.moyo-cd__stat-value {
		font-size: 16px !important;
	}

	.moyo-cd__stars svg {
		width: 14px;
		height: 14px;
	}

	.moyo-cd__stars-score {
		font-size: 13px !important;
	}

	/* Featured image */
	.moyo-cd__featured-img {
		margin-bottom: 12px;
		border-radius: 6px;
	}

	.moyo-cd__featured-img img {
		max-height: 180px;
	}

	.moyo-cd__featured-img--placeholder {
		height: 140px;
	}

	/* Tabs — scroll horizontally, smaller text */
	.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__item,
	.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__nav-item,
	.moyo-cd__tabs-wrap .masterstudy-single-course-tabs .nav-tabs li a {
		font-size: 13px !important;
		padding: 10px 12px !important;
	}

	/* Tab content — prevent overflow */
	.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__content,
	.moyo-cd__tabs-wrap .masterstudy-single-course-tabs__container {
		overflow-x: hidden;
		word-wrap: break-word;
		overflow-wrap: break-word;
	}

	/* Description content — prevent overflow */
	.moyo-cd .masterstudy-single-course-description__content {
		overflow-x: hidden;
		word-wrap: break-word;
	}

	.moyo-cd .masterstudy-single-course-description__content img {
		max-width: 100% !important;
		height: auto !important;
	}

	.moyo-cd .masterstudy-single-course-description__content table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	/* Content text — slightly smaller */
	.moyo-cd p,
	.moyo-cd li,
	.masterstudy-single-course p,
	.masterstudy-single-course li {
		font-size: 14px !important;
		line-height: 1.65 !important;
	}

	/* Enroll button — compact, full width */
	.moyo-cd__enroll-btn {
		width: 100% !important;
		font-size: 13px !important;
		padding: 11px 16px !important;
		border-radius: 8px !important;
		letter-spacing: 0.5px;
	}

	/* Buy button — compact */
	.moyo-cd__cta .masterstudy-buy-button,
	.moyo-cd__cta .stm_lms_buy_button_auth,
	.moyo-cd__cta .masterstudy-buy-button__button,
	.moyo-cd__cta a[class*="masterstudy-buy"],
	.moyo-cd__sidebar .masterstudy-buy-button,
	.moyo-cd__sidebar .masterstudy-buy-button__button {
		padding: 11px 16px !important;
		font-size: 13px !important;
		border-radius: 8px !important;
	}

	/* Price — smaller */
	.moyo-cd__sidebar .stm-lms-price .price,
	.moyo-cd__sidebar .masterstudy-buy-button__price {
		font-size: 22px !important;
	}

	/* Certificate badge — compact inline */
	.moyo-cd__cert-badge {
		padding: 7px 12px;
		margin-bottom: 4px;
		border-radius: 80px;
	}

	.moyo-cd__cert-badge svg {
		width: 16px;
		height: 16px;
	}

	.moyo-cd__cert-badge span {
		font-size: 12px !important;
	}

	/* Actions row — compact */
	.moyo-cd__actions {
		padding: 4px 0;
		gap: 14px;
	}

	/* Details card — compact */
	.moyo-cd__details-card {
		border-radius: 8px;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__title {
		padding: 11px 14px !important;
		font-size: 14px !important;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__item {
		padding: 8px 14px;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__name,
	.moyo-cd__details-card .masterstudy-single-course-details__quantity {
		font-size: 12px !important;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__icon-wrapper {
		gap: 8px;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__icon svg {
		width: 16px !important;
		height: 16px !important;
	}

	/* Duration card — compact */
	.moyo-cd__duration-card {
		margin-top: 0;
		margin-bottom: 0;
		border-radius: 8px;
	}

	.moyo-cd__duration-title {
		padding: 10px 14px !important;
		font-size: 13px !important;
	}

	.moyo-cd__duration-table {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.moyo-cd__duration-row {
		min-width: 320px;
		font-size: 11px;
		padding: 8px 14px;
	}

	.moyo-cd__duration-row--header {
		font-size: 10px;
		padding: 7px 14px;
	}

	/* Info boxes — compact */
	.moyo-cd__info-box {
		border-radius: 8px;
	}

	.moyo-cd__info-box .masterstudy-single-course-info__title,
	.moyo-cd__info-box h4 {
		padding: 10px 14px !important;
		font-size: 13px !important;
	}

	.moyo-cd__info-box .masterstudy-single-course-info__content,
	.moyo-cd__info-box ul {
		padding: 10px 14px !important;
		font-size: 13px;
	}

	/* Working hours — compact */
	.moyo-cd__hours-card {
		border-radius: 8px;
	}

	.moyo-cd__hours-header {
		padding: 12px 14px;
		gap: 10px;
	}

	.moyo-cd__hours-icon {
		width: 34px;
		height: 34px;
		border-radius: 8px;
	}

	.moyo-cd__hours-icon svg {
		width: 16px;
		height: 16px;
	}

	.moyo-cd__hours-heading {
		font-size: 13px !important;
	}

	.moyo-cd__hours-subtitle {
		font-size: 11px;
	}

	.moyo-cd__hours-row {
		padding: 8px 14px;
		font-size: 12px;
	}

	.moyo-cd__hours-day {
		font-size: 12px;
	}

	.moyo-cd__hours-time,
	.moyo-cd__hours-closed {
		font-size: 12px;
	}

	/* Related courses — 1 column */
	.moyo-cd .related_courses .stm_lms_courses_grid,
	.moyo-cd .related_courses .stm_lms_courses__grid,
	.moyo-cd .masterstudy-single-course-related .stm_lms_courses_grid,
	.moyo-cd .masterstudy-related-courses__list {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.moyo-cd .masterstudy-related-courses__title {
		font-size: 16px !important;
		margin-bottom: 10px !important;
		padding-bottom: 8px;
	}

	.moyo-cd .masterstudy-related-courses__item-title {
		font-size: 14px !important;
	}

	.moyo-cd .masterstudy-related-courses__item-meta {
		padding: 10px 12px;
	}

	/* Curriculum — compact */
	.moyo-cd .masterstudy-single-course-curriculum__section-title,
	.moyo-cd .stm_curriculum_section_title {
		padding: 10px 12px !important;
		font-size: 13px !important;
	}

	.moyo-cd .masterstudy-single-course-curriculum__lesson,
	.moyo-cd .stm_curriculum_lesson {
		padding: 8px 12px 8px 18px;
		font-size: 12px;
	}

	/* Review cards */
	.moyo-cd .masterstudy-single-course-reviews__item,
	.moyo-cd .stm_lms_review_item,
	.moyo-cd .review_card {
		padding: 12px;
	}

	/* Prevent ANY horizontal overflow */
	.moyo-cd,
	.moyo-cd__main,
	.moyo-cd__sidebar {
		max-width: 100vw;
		overflow-x: hidden;
		box-sizing: border-box;
	}

	/* MasterStudy completion progress — compact */
	.moyo-cd__sidebar .masterstudy-single-course-complete {
		padding: 12px !important;
	}

	/* Wishlist/share text */
	.moyo-cd__actions .masterstudy-single-course-wishlist__title,
	.moyo-cd__actions .masterstudy-single-course-share-button__title {
		font-size: 12px !important;
	}
}


/* ============================================================
   13c. RESPONSIVE — 400px (very small phones)
   ============================================================ */

@media (max-width: 400px) {

	.moyo-cd-hero__inner {
		padding: 24px 12px 18px;
	}

	.moyo-cd-hero__title {
		font-size: 20px !important;
	}

	.moyo-cd-hero__breadcrumb {
		font-size: 10px;
	}

	.moyo-cd {
		padding: 10px 8px 32px;
		gap: 10px;
	}

	.moyo-cd__main {
		padding: 12px;
	}

	.moyo-cd__sidebar {
		gap: 8px;
	}

	.moyo-cd__enroll-btn {
		padding: 10px 14px !important;
		font-size: 12px !important;
	}

	.moyo-cd__cta .masterstudy-buy-button,
	.moyo-cd__cta .masterstudy-buy-button__button,
	.moyo-cd__sidebar .masterstudy-buy-button,
	.moyo-cd__sidebar .masterstudy-buy-button__button {
		padding: 10px 14px !important;
		font-size: 12px !important;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__title {
		padding: 10px 12px !important;
		font-size: 13px !important;
	}

	.moyo-cd__details-card .masterstudy-single-course-details__item {
		padding: 7px 12px;
	}

	.moyo-cd__hours-header {
		padding: 10px 12px;
	}

	.moyo-cd__hours-row {
		padding: 7px 12px;
		font-size: 11px;
	}
}
