/* =====================================================
   SAN SAN — HỆ THỐNG TRANG THƯƠNG HIỆU & KHÓA HỌC

   CSS chỉ giữ ngôn ngữ thị giác. Padding, span cột, thứ tự và khoảng cách
   nằm trong thuộc tính gốc của Section/Row/Column để marketing chỉnh trực
   tiếp trên UX Builder ở desktop, tablet và mobile.
   ===================================================== */

.ss-system-page,
.ss-program-document {
	--ss-page-ink: #14161f;
	--ss-page-body: #4b5563;
	--ss-page-muted: #69707d;
	--ss-page-red: #e30514;
	--ss-page-red-dark: #b00410;
	--ss-page-paper: #f4f2ee;
	--ss-page-soft: #f7f8fa;
	--ss-page-line: #dfe2e7;
	--ss-page-dark: #0e101a;
}

/* =====================================================
   COURSE COMPETITIVE V5 — 2026-09-16

	Landing page dài, giàu hình ảnh và có nhịp chuyển đổi rõ. Lưới 5 mô-đun
	được chia thành 1 mô-đun nổi bật + 4 mô-đun 2×2 để không còn hàng khuyết.
   ===================================================== */

.ss-course-competitive-v5 {
	--ss-v5-ink: #11141a;
	--ss-v5-body: #505762;
	--ss-v5-red: #e30514;
	--ss-v5-red-dark: #a90712;
	--ss-v5-paper: #f3f1ed;
	--ss-v5-line: rgba(17, 20, 26, .16);
}

.ss-course-competitive-v5 > .section-content > .row:not(.row-full-width) {
	max-width: min(1360px, calc(100vw - 80px)) !important;
}

.ss-course-competitive-v5 h2,
.ss-course-competitive-v5 h3,
.ss-course-competitive-v5 strong {
	color: var(--ss-v5-ink);
}

.ss-course-competitive-v5 h2 {
	margin: 0;
	font-size: clamp(42px, 4.3vw, 66px);
	line-height: 1.03;
	letter-spacing: -.025em;
}

.ss-course-competitive-v5 h3 {
	font-size: clamp(24px, 1.8vw, 31px);
	line-height: 1.14;
	letter-spacing: -.025em;
}

.ss-course-competitive-v5 p,
.ss-course-competitive-v5 li,
.ss-course-competitive-v5 span {
	color: var(--ss-v5-body);
	font-size: 17px;
	line-height: 1.68;
}

.ss-v5-intro h2 {
	max-width: 13ch;
}

.ss-v5-intro .ss-v5-lead {
	max-width: 760px;
	margin: 0 0 22px;
	color: var(--ss-v5-ink);
	font-size: clamp(20px, 1.55vw, 25px);
	line-height: 1.45;
}

.ss-v5-intro p:not(.ss-v5-lead) {
	max-width: 760px;
}

.ss-v5-value-section,
.ss-v5-value-section > .section-content {
	padding: 0 !important;
}

.ss-v5-value-banner {
	min-height: 680px;
}

.ss-v5-value-banner .section-bg-overlay {
	background: linear-gradient(90deg, rgba(8, 10, 15, .86), rgba(8, 10, 15, .15) 82%) !important;
}

.ss-v5-value-banner .text-box {
	top: auto !important;
	right: auto !important;
	bottom: 72px !important;
	left: 0 !important;
	width: min(1120px, 82vw) !important;
	max-width: none !important;
	box-sizing: border-box;
	transform: none !important;
	padding: 0 48px 0 max(56px, calc((100vw - 1360px) / 2));
}

.ss-v5-value-banner h2,
.ss-v5-value-banner p {
	color: #fff !important;
}

.ss-v5-value-banner h2 {
	max-width: 18ch;
	margin-bottom: 24px;
	font-size: clamp(48px, 5.2vw, 80px);
}

.ss-v5-value-banner p {
	max-width: 760px;
	margin: 0;
	font-size: clamp(19px, 1.45vw, 23px);
}

.ss-v5-pain h2 {
	max-width: 15ch;
}

.ss-v5-pain .row:first-child p,
.ss-v5-curriculum .row:first-child p,
.ss-v5-deliverables .row:first-child p,
.ss-v5-gallery .row:first-child p {
	max-width: 760px;
	margin-top: 24px;
	font-size: 19px;
}

.ss-v5-pain-grid,
.ss-v5-deliverable-grid {
	margin-top: clamp(48px, 5vw, 76px);
}

.ss-v5-pain-card > .col-inner,
.ss-v5-deliverable-card > .col-inner {
	height: 100%;
	padding: 38px 34px;
	border-top: 3px solid var(--ss-v5-red);
	background: #fff;
}

.ss-v5-pain-card h3,
.ss-v5-deliverable-card h3 {
	margin: 0 0 16px;
}

.ss-v5-pain-card p,
.ss-v5-deliverable-card p {
	margin: 0;
}

.ss-v5-outcomes-media > .col-inner,
.ss-v5-outcomes-image,
.ss-v5-outcomes-image .img-inner,
.ss-v5-outcomes-copy > .col-inner {
	min-height: 760px;
}

.ss-v5-outcomes-image,
.ss-v5-outcomes-image .img-inner {
	height: 760px !important;
	overflow: hidden;
}

.ss-v5-outcomes-image img,
.ss-v5-method-image img,
.ss-v5-module-image img,
.ss-v5-gallery-image img,
.ss-v5-instructor-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ss-v5-outcomes-copy > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-v5-outcomes-copy h2 {
	max-width: 13ch;
}

.ss-v5-section-intro {
	max-width: 620px;
	margin: 24px 0 30px;
}

.ss-v5-outcome-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ss-v5-outcome-list li {
	display: grid;
	grid-template-columns: minmax(170px, .85fr) minmax(0, 1.15fr);
	gap: 24px;
	padding: 16px 0;
	border-top: 1px solid var(--ss-v5-line);
}

.ss-v5-outcome-list li:last-child {
	border-bottom: 1px solid var(--ss-v5-line);
}

.ss-v5-outcome-list strong,
.ss-v5-outcome-list span {
	display: block;
}

.ss-v5-curriculum h2 {
	max-width: 18ch;
}

.ss-v5-module-grid {
	margin-top: clamp(52px, 6vw, 88px);
}

.ss-v5-module-featured > .col-inner {
	display: grid;
	grid-template-columns: 50% 50%;
	min-height: 520px;
	border: 1px solid var(--ss-v5-line);
	background: var(--ss-v5-ink);
}

.ss-v5-module-featured .ss-v5-module-image,
.ss-v5-module-featured .ss-v5-module-image .img-inner {
	height: 520px !important;
	overflow: hidden;
}

.ss-v5-module-featured .ss-v5-module-copy {
	display: flex;
	height: 100%;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: center;
	padding: clamp(44px, 5vw, 82px);
}

.ss-v5-module-featured h3,
.ss-v5-module-featured p {
	color: #fff !important;
}

.ss-v5-module-featured h3 {
	max-width: 14ch;
	margin: 0 0 20px;
	font-size: clamp(34px, 3vw, 50px);
}

.ss-v5-module-featured p {
	max-width: 620px;
	margin: 0;
	color: rgba(255, 255, 255, .82) !important;
}

.ss-v5-module-card > .col-inner {
	display: grid;
	height: 100%;
	grid-template-columns: 42% 58%;
	align-items: stretch;
	border: 1px solid var(--ss-v5-line);
	background: #fff;
}

.ss-v5-module-card .ss-v5-module-image,
.ss-v5-module-card .ss-v5-module-image .img-inner {
	height: 100% !important;
	min-height: 380px;
	overflow: hidden;
}

.ss-v5-module-card .ss-v5-module-copy {
	display: flex;
	height: 100%;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: center;
	padding: 38px;
}

.ss-v5-module-card h3 {
	margin: 0 0 16px;
}

.ss-v5-module-card p {
	margin: 0;
}

.ss-v5-relations h2,
.ss-v5-relations h3,
.ss-v5-relations p {
	color: #fff !important;
}

.ss-v5-relations h2 {
	max-width: 16ch;
}

.ss-v5-relations .row:first-child p {
	max-width: 760px;
	margin-top: 24px;
	color: rgba(255, 255, 255, .72) !important;
	font-size: 19px;
}

.ss-v5-relation-grid {
	margin-top: clamp(48px, 5vw, 76px);
}

.ss-v5-relation-card > .col-inner {
	height: 100%;
	padding: 36px 34px;
	border-top: 2px solid var(--ss-v5-red);
	background: rgba(255, 255, 255, .04);
}

.ss-v5-relation-card h3 {
	margin: 0 0 16px;
}

.ss-v5-relation-card p {
	margin: 0;
	color: rgba(255, 255, 255, .72) !important;
}

.ss-v5-method-media > .col-inner,
.ss-v5-method-image,
.ss-v5-method-image .img-inner,
.ss-v5-method-copy > .col-inner {
	min-height: 700px;
}

.ss-v5-method-image,
.ss-v5-method-image .img-inner {
	height: 700px !important;
	overflow: hidden;
}

.ss-v5-method-copy > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-v5-method-copy h2 {
	max-width: 13ch;
	margin-bottom: 26px;
}

.ss-v5-method-copy p,
.ss-v5-method-copy ul {
	max-width: 650px;
}

.ss-v5-method-copy ul {
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}

.ss-v5-method-copy li {
	padding: 13px 0;
	border-top: 1px solid var(--ss-v5-line);
}

.ss-v5-audience-title > .col-inner,
.ss-v5-audience-copy > .col-inner {
	height: 100%;
}

.ss-v5-audience-title h2 {
	max-width: 10ch;
	color: #fff !important;
	font-size: clamp(48px, 5.2vw, 76px);
}

.ss-v5-audience-list > div {
	padding: 25px 0;
	border-top: 1px solid var(--ss-v5-line);
}

.ss-v5-audience-list > div:last-child {
	border-bottom: 1px solid var(--ss-v5-line);
}

.ss-v5-audience-list h3 {
	margin: 0 0 9px;
}

.ss-v5-audience-list p {
	margin: 0;
}

.ss-v5-deliverables h2 {
	max-width: 12ch;
}

.ss-v5-deliverable-card > .col-inner {
	border: 1px solid var(--ss-v5-line);
	border-top: 4px solid var(--ss-v5-red);
	background: var(--ss-v5-paper);
}

.ss-v5-gallery h2 {
	max-width: 13ch;
}

.ss-v5-gallery-grid {
	margin-top: clamp(48px, 5vw, 74px);
}

.ss-v5-gallery-image,
.ss-v5-gallery-image .img-inner {
	height: 520px !important;
	overflow: hidden;
}

.ss-v5-instructor .ss-founder-title {
	max-width: 12ch;
	margin-bottom: 24px;
}

.ss-v5-instructor .ss-founder-intro {
	max-width: 700px;
}

.ss-v5-instructor .ss-instructor-profile-link {
	display: inline-block;
	margin-top: 12px;
	padding-bottom: 3px;
	border-bottom: 1px solid currentColor;
	color: #101218;
	font-size: 17px;
	font-weight: 700;
	text-decoration: none;
}

.ss-v5-instructor .ss-instructor-profile-link:hover {
	color: #e30613;
}

.ss-v5-instructor-image,
.ss-v5-instructor-image .img-inner {
	height: 640px !important;
	min-height: 640px;
	overflow: hidden;
}

/* Equal rhythm for repeated text cards. Heading and description baselines stay
   aligned within each desktop row even when the copy has different lengths. */
@media (min-width: 850px) {
	.ss-v5-pain-card > .col-inner,
	.ss-v5-deliverable-card > .col-inner,
	.ss-v5-relation-card > .col-inner,
	.ss-seo-course-card > .col-inner {
		display: flex;
		flex-direction: column;
	}

	.ss-v5-pain-card h3,
	.ss-v5-deliverable-card h3,
	.ss-v5-relation-card h3,
	.ss-seo-course-card h3 {
		min-height: 2.24em;
	}

	.ss-v5-pain-card p,
	.ss-v5-deliverable-card p,
	.ss-v5-relation-card p,
	.ss-seo-course-card p {
		min-height: 4.95em;
	}

	.ss-v5-module-card h3 {
		min-height: 2.2em;
	}

	.ss-v5-module-card p {
		min-height: 5em;
	}

	.ss-exclusive-card h2 {
		min-height: 2.04em;
	}
}

@media (min-width: 550px) and (max-width: 849px) {
	.ss-v5-pain-card h3,
	.ss-v5-deliverable-card h3,
	.ss-v5-relation-card h3,
	.ss-seo-course-card h3 {
		min-height: 3.36em;
	}

	.ss-v5-pain-card p,
	.ss-v5-deliverable-card p,
	.ss-v5-relation-card p,
	.ss-seo-course-card p {
		min-height: 9.9em;
	}

	.ss-v5-module-card h3,
	.ss-exclusive-card h2 {
		min-height: 3.2em;
	}

	.ss-v5-module-card p {
		min-height: 6.6em;
	}
}

.ss-v5-faq h2 {
	max-width: 11ch;
}

.ss-v5-faq-item {
	padding: 24px 0;
	border-top: 1px solid var(--ss-v5-line);
}

.ss-v5-faq-item:last-child {
	border-bottom: 1px solid var(--ss-v5-line);
}

.ss-v5-faq-item h3 {
	margin: 0 0 10px;
	font-size: clamp(22px, 1.7vw, 28px);
}

.ss-v5-faq-item p {
	margin: 0;
}

.ss-v5-cta h2,
.ss-v5-cta h3,
.ss-v5-cta p,
.ss-v5-cta span {
	color: #fff !important;
}

.ss-v5-cta h2 {
	max-width: 14ch;
}

.ss-v5-cta p {
	max-width: 720px;
	margin-top: 22px;
	color: rgba(255, 255, 255, .84) !important;
}

.ss-v5-facts {
	background: var(--ss-v5-ink) !important;
}

.ss-v5-facts strong,
.ss-v5-facts span {
	color: #fff !important;
}

@media (max-width: 849px) {
	.ss-course-competitive-v5 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 48px) !important;
	}

	.ss-v5-value-banner {
		min-height: 580px;
	}

	.ss-v5-module-card > .col-inner {
		grid-template-columns: 40% 60%;
	}

	.ss-v5-module-card .ss-v5-module-copy {
		padding: 30px;
	}

	.ss-v5-gallery-image,
	.ss-v5-gallery-image .img-inner {
		height: 390px !important;
	}
}

@media (max-width: 549px) {
	.ss-course-competitive-v5 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 32px) !important;
	}

	.ss-course-competitive-v5 h2 {
		font-size: 38px;
	}

	.ss-v5-value-banner {
		min-height: 520px;
	}

	.ss-v5-value-banner .text-box {
		bottom: 38px !important;
		width: 100% !important;
		padding: 0 22px;
	}

	.ss-v5-value-banner h2 {
		font-size: 42px;
	}

	.ss-v5-pain-card > .col-inner,
	.ss-v5-deliverable-card > .col-inner {
		padding: 30px 26px;
	}

	.ss-v5-outcomes-media > .col-inner,
	.ss-v5-outcomes-image,
	.ss-v5-outcomes-image .img-inner,
	.ss-v5-method-media > .col-inner,
	.ss-v5-method-image,
	.ss-v5-method-image .img-inner {
		min-height: 390px;
	}

	.ss-v5-outcomes-image,
	.ss-v5-outcomes-image .img-inner,
	.ss-v5-method-image,
	.ss-v5-method-image .img-inner {
		height: 390px !important;
	}

	.ss-v5-outcomes-copy > .col-inner,
	.ss-v5-method-copy > .col-inner {
		min-height: 0;
	}

	.ss-v5-outcome-list li {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.ss-v5-module-featured > .col-inner,
	.ss-v5-module-card > .col-inner {
		grid-template-columns: 1fr;
	}

	.ss-v5-module-featured .ss-v5-module-image,
	.ss-v5-module-featured .ss-v5-module-image .img-inner,
	.ss-v5-module-card .ss-v5-module-image,
	.ss-v5-module-card .ss-v5-module-image .img-inner {
		height: 260px !important;
		min-height: 260px;
	}

	.ss-v5-module-featured .ss-v5-module-copy,
	.ss-v5-module-card .ss-v5-module-copy {
		padding: 32px 26px 36px;
	}

	.ss-v5-audience-title h2 {
		max-width: 12ch;
		font-size: 44px;
	}

	.ss-v5-gallery-image,
	.ss-v5-gallery-image .img-inner {
		height: 300px !important;
	}

	.ss-v5-instructor-image,
	.ss-v5-instructor-image .img-inner {
		height: 470px !important;
		min-height: 470px;
	}
}

/* =====================================================
   COURSE HOME LANGUAGE V4 — 2026-09-16

   Phần thân khóa học dùng lại nhịp đã hoàn thiện ở trang chủ: copy ngắn,
   banner ảnh phủ tối, card ảnh–text, mảng đỏ–giấy và split image/copy.
   ===================================================== */

.ss-course-home-v4 {
	--ss-home-course-ink: #11141a;
	--ss-home-course-body: #50555f;
	--ss-home-course-red: #e30514;
	--ss-home-course-paper: #f2f0ed;
	--ss-home-course-line: rgba(17, 20, 26, .16);
}

.ss-course-home-v4 > .section-content > .row:not(.row-full-width) {
	max-width: min(1360px, calc(100vw - 80px)) !important;
}

.ss-course-home-v4 h2,
.ss-course-home-v4 h3,
.ss-course-home-v4 strong {
	color: var(--ss-home-course-ink);
}

.ss-course-home-v4 h2 {
	margin: 0;
	font-size: clamp(42px, 4vw, 62px);
	line-height: 1.04;
	letter-spacing: -.025em;
}

.ss-course-home-v4 h3 {
	font-size: clamp(24px, 1.8vw, 30px);
	line-height: 1.15;
	letter-spacing: -.025em;
}

.ss-course-home-v4 p,
.ss-course-home-v4 li,
.ss-course-home-v4 span {
	color: var(--ss-home-course-body);
	font-size: 17px;
	line-height: 1.65;
}

/* Intro giống đoạn dẫn giữa trang chủ: ngắn, căn giữa, không trang trí thừa. */
.ss-course-home-intro-v4 h2 {
	margin-bottom: 24px;
}

.ss-course-home-intro-v4 p {
	max-width: 760px;
	margin: 0 auto;
	font-size: clamp(18px, 1.35vw, 21px);
}

/* Banner "Vì sao" lấy đúng nhịp ảnh phủ tối của banner phụ trang chủ. */
.ss-course-home-why-section-v4,
.ss-course-home-why-section-v4 > .section-content {
	padding: 0 !important;
}

.ss-course-home-why-v4 {
	min-height: 650px;
}

.ss-course-home-why-v4 .section-bg-overlay {
	background: linear-gradient(90deg, rgba(7, 9, 14, .82), rgba(7, 9, 14, .12) 82%) !important;
}

.ss-course-home-why-v4 .text-box {
	top: auto !important;
	right: auto !important;
	bottom: 72px !important;
	left: 0 !important;
	width: min(980px, 78vw) !important;
	max-width: none !important;
	box-sizing: border-box;
	transform: none !important;
	padding: 0 40px 0 max(56px, calc((100vw - 1360px) / 2));
}

.ss-course-home-why-v4 h2,
.ss-course-home-why-v4 p {
	color: #fff !important;
}

.ss-course-home-why-v4 h2 {
	max-width: 16ch;
	margin-bottom: 22px;
	font-size: clamp(48px, 5vw, 76px);
}

.ss-course-home-why-v4 p {
	max-width: 680px;
	margin: 0;
	font-size: clamp(18px, 1.35vw, 22px);
}

/* Lưới chương trình: đúng kiểu ảnh trái, nội dung phải của trang chủ. */
.ss-course-home-programs-v4 h2 {
	max-width: 18ch;
}

.ss-course-home-program-grid-v4 {
	margin-top: clamp(48px, 5vw, 76px);
}

.ss-course-home-card-v4 > .col-inner {
	display: grid;
	height: 100%;
	grid-template-columns: 42% 58%;
	align-items: stretch;
	border: 1px solid var(--ss-home-course-line);
	background: #fff;
}

.ss-course-home-card-image-v4,
.ss-course-home-card-image-v4 .img-inner {
	height: 100% !important;
	min-height: 300px;
	overflow: hidden;
}

.ss-course-home-card-image-v4 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ss-course-home-card-copy-v4 {
	display: flex;
	height: 100%;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: 38px;
}

.ss-course-home-card-copy-v4 h3 {
	margin: 0 0 14px;
}

.ss-course-home-card-copy-v4 p {
	margin: 0;
}

/* Mảng đỏ–sáng dùng cùng logic với section doanh nghiệp ở trang chủ. */
.ss-course-home-audience-title-v4 > .col-inner,
.ss-course-home-audience-copy-v4 > .col-inner {
	height: 100%;
}

.ss-course-home-audience-title-v4 h2 {
	max-width: 10ch;
	color: #fff !important;
	font-size: clamp(48px, 5.2vw, 76px);
}

.ss-course-home-audience-list-v4 > div {
	padding: 24px 0;
	border-top: 1px solid var(--ss-home-course-line);
}

.ss-course-home-audience-list-v4 > div:last-child {
	border-bottom: 1px solid var(--ss-home-course-line);
}

.ss-course-home-audience-list-v4 h3 {
	margin: 0 0 8px;
}

.ss-course-home-audience-list-v4 p {
	margin: 0;
}

/* Kết quả: ảnh lớn và danh sách ngắn như split feature trang chủ. */
.ss-course-home-outcomes-media-v4 > .col-inner,
.ss-course-home-outcomes-image-v4,
.ss-course-home-outcomes-image-v4 .img-inner,
.ss-course-home-outcomes-copy-v4 > .col-inner {
	min-height: 640px;
}

.ss-course-home-outcomes-image-v4,
.ss-course-home-outcomes-image-v4 .img-inner {
	height: 640px !important;
	overflow: hidden;
}

.ss-course-home-outcomes-image-v4 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ss-course-home-outcomes-copy-v4 > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-course-home-outcomes-copy-v4 h2 {
	max-width: 14ch;
	margin-bottom: 30px;
}

.ss-course-home-outcome-list-v4 {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ss-course-home-outcome-list-v4 li {
	display: grid;
	grid-template-columns: minmax(170px, .8fr) minmax(0, 1.2fr);
	gap: 24px;
	padding: 15px 0;
	border-top: 1px solid var(--ss-home-course-line);
}

.ss-course-home-outcome-list-v4 strong,
.ss-course-home-outcome-list-v4 span {
	display: block;
}

/* Khối giảng viên giữ bố cục ảnh–copy của chính trang chủ, bỏ eyebrow. */
.ss-course-home-instructor-v4 .ss-founder-title {
	max-width: 12ch;
	margin-bottom: 24px;
}

.ss-course-home-instructor-v4 .ss-founder-intro {
	max-width: 660px;
}

.ss-course-home-faq-v4 h2 {
	max-width: 10ch;
}

.ss-course-home-faq-item-v4 {
	padding: 22px 0;
	border-top: 1px solid var(--ss-home-course-line);
}

.ss-course-home-faq-item-v4:last-child {
	border-bottom: 1px solid var(--ss-home-course-line);
}

.ss-course-home-faq-item-v4 h3 {
	margin: 0 0 8px;
	font-size: clamp(22px, 1.7vw, 28px);
}

.ss-course-home-faq-item-v4 p {
	margin: 0;
}

.ss-course-home-cta-v4 h2,
.ss-course-home-cta-v4 p,
.ss-course-home-cta-v4 span {
	color: #fff !important;
}

.ss-course-home-cta-v4 h2 {
	max-width: 15ch;
}

.ss-course-home-cta-v4 p {
	max-width: 680px;
	margin-top: 20px;
	color: rgba(255, 255, 255, .86) !important;
}

.ss-course-home-facts-v4 {
	background: #11141a !important;
}

.ss-course-home-facts-v4 .ss-course-fact strong,
.ss-course-home-facts-v4 .ss-course-fact span {
	color: #fff !important;
}

@media (max-width: 849px) {
	.ss-course-home-v4 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 48px) !important;
	}

	.ss-course-home-why-v4 {
		min-height: 570px;
	}

	.ss-course-home-card-v4 > .col-inner {
		grid-template-columns: 40% 60%;
	}

	.ss-course-home-card-copy-v4 {
		padding: 28px;
	}
}

@media (max-width: 549px) {
	.ss-course-home-v4 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 32px) !important;
	}

	.ss-course-home-v4 h2 {
		font-size: 38px;
	}

	.ss-course-home-why-v4 {
		min-height: 500px;
	}

	.ss-course-home-why-v4 .text-box {
		bottom: 38px !important;
		width: 100% !important;
		padding: 0 22px;
	}

	.ss-course-home-why-v4 h2 {
		font-size: 42px;
	}

	.ss-course-home-card-v4 > .col-inner {
		grid-template-columns: 1fr;
	}

	.ss-course-home-card-image-v4,
	.ss-course-home-card-image-v4 .img-inner {
		height: 240px !important;
		min-height: 240px;
	}

	.ss-course-home-card-copy-v4 {
		padding: 26px 24px 30px;
	}

	.ss-course-home-audience-title-v4 h2 {
		max-width: 12ch;
		font-size: 44px;
	}

	.ss-course-home-outcomes-media-v4 > .col-inner,
	.ss-course-home-outcomes-image-v4,
	.ss-course-home-outcomes-image-v4 .img-inner {
		min-height: 380px;
	}

	.ss-course-home-outcomes-image-v4,
	.ss-course-home-outcomes-image-v4 .img-inner {
		height: 380px !important;
	}

	.ss-course-home-outcomes-copy-v4 > .col-inner {
		min-height: 0;
	}

	.ss-course-home-outcome-list-v4 li {
		grid-template-columns: 1fr;
		gap: 4px;
	}
}

/* =====================================================
   COURSE REFERENCE V3 — 2026-09-16

   Một hệ layout duy nhất cho toàn bộ phần dưới hero khóa học. Nhịp bố cục
   bám theo các reference: editorial intro, list thumbnail + copy, banner ảnh
   trong nội dung, card ảnh và các section image/copy toàn chiều ngang.
   ===================================================== */

.ss-course-layout-v3 {
	--ss-v3-ink: #11141a;
	--ss-v3-body: #4e535d;
	--ss-v3-red: #b20812;
	--ss-v3-paper: #f3f1ed;
	--ss-v3-line: rgba(17, 20, 26, .2);
}

.ss-course-layout-v3 > .section-content > .row:not(.row-full-width) {
	max-width: min(1480px, calc(100vw - 80px)) !important;
}

.ss-course-layout-v3 h2,
.ss-course-layout-v3 h3,
.ss-course-layout-v3 strong {
	color: var(--ss-v3-ink);
}

.ss-course-layout-v3 h2 {
	margin: 0;
	font-size: clamp(42px, 4.2vw, 68px);
	line-height: 1.02;
	letter-spacing: -.025em;
}

.ss-course-layout-v3 h3 {
	font-size: clamp(25px, 2vw, 34px);
	line-height: 1.12;
	letter-spacing: -.025em;
}

.ss-course-layout-v3 p,
.ss-course-layout-v3 li,
.ss-course-layout-v3 span {
	color: var(--ss-v3-body);
	font-size: 17px;
	line-height: 1.65;
}

.ss-course-section-rule-v3 .is-divider {
	margin-top: 12px;
}

/* Tổng quan: một luận điểm và một đoạn giải thích, không gắn ảnh vào cột hẹp. */
.ss-course-overview-v3 h2 {
	max-width: 15ch;
}

.ss-course-overview-v3 p {
	max-width: 34ch;
	margin-top: 8px;
	font-size: clamp(18px, 1.25vw, 21px);
}

/* Pain point chỉ là nhịp chuyển tiếp, không biến thành card nổi. */
.ss-course-pain-v3 h2 {
	max-width: 15ch;
}

.ss-course-pain-grid-v3 {
	margin-top: clamp(42px, 5vw, 76px);
}

.ss-course-pain-item-v3 > .col-inner {
	height: 100%;
	padding: 32px clamp(18px, 2vw, 34px) 0 0;
	border-top: 1px solid var(--ss-v3-red);
}

.ss-course-pain-item-v3 h3 {
	margin: 0 0 14px;
}

/* List chương trình dạng thumbnail + copy giống reference MBA Programs. */
.ss-course-program-v3 h2,
.ss-course-audience-v3 h2 {
	max-width: 17ch;
}

.ss-course-program-grid-v3,
.ss-course-audience-grid-v3 {
	margin-top: clamp(50px, 6vw, 88px);
}

.ss-course-program-item-v3 > .col-inner {
	display: grid;
	height: 100%;
	grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
	gap: clamp(26px, 3vw, 46px);
	align-items: center;
	padding: 30px 0;
	border-top: 1px solid var(--ss-v3-line);
}

.ss-course-program-thumb-v3,
.ss-course-program-thumb-v3 .img-inner {
	height: 190px !important;
}

.ss-course-program-thumb-v3,
.ss-course-card-image-v3,
.ss-course-outcomes-image-v3,
.ss-course-instructor-image-v3 {
	overflow: hidden;
}

.ss-course-program-thumb-v3 img,
.ss-course-card-image-v3 img,
.ss-course-outcomes-image-v3 img,
.ss-course-instructor-image-v3 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ss-course-program-item-v3 .text-inner h3 {
	margin: 0 0 12px;
}

.ss-course-program-item-v3 .text-inner p {
	margin: 0;
}

/* UX Banner thật nằm giữa nội dung. */
.ss-course-banner-section-v3,
.ss-course-banner-section-v3 > .section-content {
	padding: 0 !important;
}

.ss-course-content-banner-v3 {
	min-height: 680px;
}

.ss-course-content-banner-v3 .section-bg-overlay {
	background: linear-gradient(90deg, rgba(8, 10, 15, .84), rgba(8, 10, 15, .12) 78%) !important;
}

.ss-course-content-banner-v3 .text-box {
	max-width: 860px;
	box-sizing: border-box;
	padding-left: clamp(28px, 7vw, 132px);
	padding-right: 28px;
}

.ss-course-content-banner-v3 h2,
.ss-course-content-banner-v3 p {
	color: #fff !important;
}

.ss-course-content-banner-v3 h2 {
	max-width: 15ch;
	margin-bottom: 22px;
}

.ss-course-content-banner-v3 p {
	max-width: 46ch;
	font-size: clamp(18px, 1.3vw, 22px);
}

/* Ba card ảnh lớn, không dùng icon hoặc số trang trí. */
.ss-course-audience-card-v3 > .col-inner {
	height: 100%;
}

.ss-course-card-image-v3,
.ss-course-card-image-v3 .img-inner {
	height: 320px !important;
}

.ss-course-audience-card-v3 .text {
	padding-top: 24px;
}

.ss-course-audience-card-v3 h3 {
	margin: 0 0 12px;
}

.ss-course-audience-card-v3 p {
	max-width: 38ch;
	margin: 0;
}

/* Kết quả: một ảnh lớn và checklist, không còn lưới năm ô rời. */
.ss-course-outcomes-media-v3 > .col-inner,
.ss-course-outcomes-image-v3,
.ss-course-outcomes-image-v3 .img-inner,
.ss-course-outcomes-copy-v3 > .col-inner {
	min-height: 760px;
}

.ss-course-outcomes-image-v3,
.ss-course-outcomes-image-v3 .img-inner {
	height: 760px !important;
}

.ss-course-outcomes-copy-v3 > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-course-outcomes-copy-v3 h2 {
	max-width: 13ch;
	margin-bottom: 42px;
}

.ss-course-outcome-list-v3 {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ss-course-outcome-list-v3 li {
	display: grid;
	grid-template-columns: minmax(190px, .8fr) minmax(0, 1.2fr);
	gap: 30px;
	padding: 18px 0;
	border-top: 1px solid var(--ss-v3-line);
}

.ss-course-outcome-list-v3 strong {
	font-size: 18px;
	line-height: 1.35;
}

.ss-course-outcome-list-v3 span {
	display: block;
}

/* Giảng viên: copy trái, ảnh phải để đổi nhịp so với section trước. */
.ss-course-instructor-copy-v3 > .col-inner,
.ss-course-instructor-media-v3 > .col-inner,
.ss-course-instructor-image-v3,
.ss-course-instructor-image-v3 .img-inner {
	min-height: 720px;
}

.ss-course-instructor-image-v3,
.ss-course-instructor-image-v3 .img-inner {
	height: 720px !important;
}

.ss-course-instructor-copy-v3 > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-course-instructor-copy-v3 h2 {
	max-width: 12ch;
	margin-bottom: 28px;
}

.ss-course-instructor-copy-v3 p {
	max-width: 52ch;
	font-size: clamp(18px, 1.25vw, 21px);
}

/* FAQ dùng danh sách đường kẻ, không thêm card nền. */
.ss-course-faq-v3 h2 {
	max-width: 11ch;
}

.ss-course-faq-item-v3 {
	padding: 28px 0;
	border-top: 1px solid var(--ss-v3-line);
}

.ss-course-faq-item-v3:last-child {
	border-bottom: 1px solid var(--ss-v3-line);
}

.ss-course-faq-item-v3 h3 {
	margin: 0 0 12px;
	font-size: clamp(23px, 1.8vw, 30px);
}

.ss-course-faq-item-v3 p {
	max-width: 62ch;
	margin: 0;
}

.ss-course-cta-v3 h2,
.ss-course-cta-v3 p,
.ss-course-cta-v3 span {
	color: #fff !important;
}

.ss-course-cta-v3 h2 {
	max-width: 14ch;
}

.ss-course-cta-v3 p {
	max-width: 52ch;
	margin-top: 22px;
	color: rgba(255, 255, 255, .84) !important;
}

/* Dải facts của các khóa độc quyền. */
.ss-course-layout-v3.ss-course-facts {
	background: var(--ss-v3-ink) !important;
}

.ss-course-layout-v3 .ss-course-fact > .col-inner {
	border-color: rgba(255, 255, 255, .16);
}

.ss-course-layout-v3 .ss-course-fact strong,
.ss-course-layout-v3 .ss-course-fact span {
	color: #fff !important;
}

@media (min-width: 1600px) {
	.ss-course-layout-v3 > .section-content > .row:not(.row-full-width) {
		max-width: 1540px !important;
	}
}

@media (max-width: 849px) {
	.ss-course-layout-v3 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 48px) !important;
	}

	.ss-course-program-item-v3 > .col-inner {
		grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
	}

	.ss-course-content-banner-v3 {
		min-height: 560px;
	}

	.ss-course-outcomes-media-v3 > .col-inner,
	.ss-course-outcomes-image-v3,
	.ss-course-outcomes-image-v3 .img-inner,
	.ss-course-outcomes-copy-v3 > .col-inner {
		min-height: 620px;
	}

	.ss-course-outcomes-image-v3,
	.ss-course-outcomes-image-v3 .img-inner {
		height: 620px !important;
	}
}

@media (max-width: 549px) {
	.ss-course-layout-v3 > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 32px) !important;
	}

	.ss-course-layout-v3 h2 {
		font-size: clamp(36px, 11vw, 48px);
	}

	.ss-course-section-rule-v3 .is-divider {
		margin-bottom: 28px;
	}

	.ss-course-overview-v3 p {
		max-width: none;
		margin-top: 28px;
	}

	.ss-course-pain-item-v3 > .col-inner {
		padding: 24px 0 30px;
	}

	.ss-course-program-item-v3 > .col-inner {
		grid-template-columns: 1fr;
		gap: 22px;
		padding: 28px 0 34px;
	}

	.ss-course-program-thumb-v3,
	.ss-course-program-thumb-v3 .img-inner {
		height: 230px !important;
	}

	.ss-course-content-banner-v3 {
		min-height: 520px;
	}

	.ss-course-content-banner-v3 .text-box {
		max-width: 92%;
		padding-left: 22px;
		padding-right: 18px;
	}

	.ss-course-card-image-v3,
	.ss-course-card-image-v3 .img-inner {
		height: 250px !important;
	}

	.ss-course-audience-card-v3 {
		margin-bottom: 34px;
	}

	.ss-course-outcomes-media-v3 > .col-inner,
	.ss-course-outcomes-image-v3,
	.ss-course-outcomes-image-v3 .img-inner {
		min-height: 380px;
	}

	.ss-course-outcomes-image-v3,
	.ss-course-outcomes-image-v3 .img-inner {
		height: 380px !important;
	}

	.ss-course-outcomes-copy-v3 > .col-inner {
		min-height: 0;
	}

	.ss-course-outcome-list-v3 li {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.ss-course-instructor-copy-v3 > .col-inner {
		min-height: 0;
	}

	.ss-course-instructor-media-v3 > .col-inner,
	.ss-course-instructor-image-v3,
	.ss-course-instructor-image-v3 .img-inner {
		min-height: 460px;
	}

	.ss-course-instructor-image-v3,
	.ss-course-instructor-image-v3 .img-inner {
		height: 460px !important;
	}
}

.ss-program-document {
	margin: 0;
}

/* Page mặc định của Flatsome bọc nội dung bằng .row-main. Rule lõi
   `.row .row` vì thế hiểu nhầm mọi row cấp cao trong section là row lồng và
   kéo chúng về trái -15px. Ở màn hình rộng, khung 1370px dính hẳn mép trái và
   để lại một mảng trắng lớn bên phải. Chỉ trả top-level row của hệ trang này
   về giữa; row_inner vẫn giữ cơ chế gutter gốc của UX Builder. */
.ss-system-page > .section-content > .row,
.ss-program-document > .section > .section-content > .row {
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
}

.ss-program-document > p:empty {
	display: none;
}

.ss-page-hero {
	background:
		linear-gradient(105deg, rgba(227, 5, 20, .11), transparent 38%),
		var(--ss-page-dark) !important;
}

.ss-page-hero .section-bg {
	display: none;
}

/* Banner chương trình theo bố cục HBS: tiêu đề lớn và ba vùng media độc lập.
   Không đặt CTA trong hero; marketing thay từng ảnh ngay trên UX Banner. */
.ss-program-hbs-hero {
	background: #e30514 !important;
}

.ss-program-hbs-hero > .section-content > .row {
	max-width: 1760px !important;
}

.ss-hbs-program-title {
	max-width: none;
	margin: 0 0 28px;
	color: #fff;
	font-family: var(--ss-font);
	font-size: clamp(72px, 9.4vw, 168px);
	font-weight: 700;
	letter-spacing: -.025em;
	line-height: .95;
	text-wrap: balance;
}

/* Tên khóa dài vẫn giữ nhịp banner nhưng không tràn khỏi khung desktop. */
.ss-hbs-program-title--long {
	font-size: clamp(68px, 7.4vw, 138px);
	line-height: .95;
}

.ss-hbs-program-title--very-long {
	font-size: clamp(64px, 6.4vw, 118px);
	line-height: .95;
}

.ss-hbs-media-row > .col {
	padding-bottom: 0;
}

.ss-hbs-media-col > .col-inner,
.ss-hbs-media-slot,
.ss-hbs-media-slot .fill,
.ss-hbs-media-slot .banner-bg {
	height: 100%;
}

.ss-hbs-media-slot {
	min-height: 560px;
	overflow: hidden;
}

.ss-hbs-media-slot .bg {
	background-position: center;
	background-size: cover;
}

/* =====================================================
   KHÓA HỌC V2 — hệ layout dùng lại cho các khóa SEO sau này
   ===================================================== */

.ss-course-v2 {
	--ss-course-ink: #101218;
	--ss-course-body: #50545d;
	--ss-course-line: rgba(16, 18, 24, .2);
}

.ss-course-v2:not(.ss-program-hbs-hero) > .section-content > .row:not(.row-full-width) {
	max-width: var(--ss-layout-wide) !important;
}

.ss-course-v2 > .section-content > .row.row-full-width {
	max-width: var(--ss-layout-canvas) !important;
}

.ss-course-v2 h2 {
	margin: 0;
	color: var(--ss-course-ink);
	font-size: var(--ss-heading-section);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: var(--ss-heading-section-line);
	text-wrap: balance;
}

.ss-course-v2 h3 {
	color: var(--ss-course-ink);
	font-weight: 600;
	letter-spacing: -.025em;
}

.ss-course-v2 p {
	color: var(--ss-course-body);
}

.ss-course-v2.dark h2,
.ss-course-v2.dark h3,
.ss-course-v2.dark p,
.ss-course-v2 .dark h2,
.ss-course-v2 .dark h3,
.ss-course-v2 .dark p {
	color: #fff;
}

.ss-course-kicker {
	margin: 0 0 20px !important;
	color: #e30514 !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ss-program-hbs-hero .ss-course-kicker,
.ss-course-final-cta .ss-course-kicker,
.ss-course-curriculum .ss-course-kicker,
.ss-course-thesis-title .ss-course-kicker {
	color: #fff !important;
}

.ss-course-hero-lead {
	max-width: 780px;
	margin: 0 0 38px !important;
	color: rgba(255, 255, 255, .9) !important;
	font-size: clamp(19px, 1.65vw, 25px);
	line-height: 1.5;
}

.ss-course-v2 .ss-course-hero-main.ss-fixed-media.img > .img-inner > img {
	object-position: 50% 22%;
}

.ss-course-fact > .col-inner {
	height: 100%;
	border-left: 1px solid rgba(255, 255, 255, .22);
}

.ss-course-fact:last-child > .col-inner {
	border-right: 1px solid rgba(255, 255, 255, .22);
}

.ss-course-fact strong,
.ss-course-fact span {
	display: block;
}

.ss-course-fact strong {
	margin-bottom: 8px;
	color: #fff;
	font-size: clamp(28px, 2.6vw, 42px);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: 1;
}

.ss-course-fact span {
	color: #bfc5d0;
	font-size: 14px;
	line-height: 1.45;
}

.ss-course-thesis-title > .col-inner,
.ss-course-thesis-copy > .col-inner {
	display: flex;
	min-height: 620px;
	flex-direction: column;
	justify-content: center;
}

.ss-course-thesis-title h2 {
	max-width: 9ch;
	color: #fff;
}

.ss-course-thesis-copy h3 {
	max-width: 18ch;
	margin: 0 0 30px;
	font-size: clamp(30px, 3.2vw, 48px);
	line-height: 1.08;
}

.ss-course-thesis-copy p {
	max-width: 680px;
	font-size: clamp(17px, 1.35vw, 21px);
	line-height: 1.65;
}

.ss-course-numbered-item > .col-inner {
	height: 100%;
	border-top: 1px solid var(--ss-course-line);
}

.ss-course-numbered-item span {
	display: block;
	margin-bottom: 50px;
	color: #e30514;
	font-size: 13px;
	font-weight: 700;
}

.ss-course-numbered-item h3 {
	margin: 0 0 12px;
	font-size: clamp(24px, 2.2vw, 32px);
}

.ss-course-numbered-item p {
	max-width: 32ch;
	margin: 0;
	font-size: 16px;
	line-height: 1.65;
}

.ss-course-curriculum h2,
.ss-course-curriculum h3 {
	color: #fff;
}

.ss-course-module > .col-inner {
	border-top: 1px solid rgba(255, 255, 255, .22);
}

.ss-course-module:last-child > .col-inner {
	border-bottom: 1px solid rgba(255, 255, 255, .22);
}

.ss-course-module .text-inner {
	display: grid;
	grid-template-columns: 90px minmax(230px, .8fr) minmax(0, 1.2fr);
	gap: 32px;
	align-items: baseline;
	padding: 32px 0;
}

.ss-course-module span {
	color: #e30514;
	font-size: 13px;
	font-weight: 700;
}

.ss-course-module h3,
.ss-course-module p {
	margin: 0;
}

.ss-course-module h3 {
	font-size: clamp(24px, 2.4vw, 36px);
}

.ss-course-module p {
	color: #bfc5d0;
	font-size: 17px;
	line-height: 1.6;
}

.ss-course-method-media > .col-inner,
.ss-course-method-image,
.ss-course-method-image .img-inner,
.ss-course-method-copy > .col-inner {
	height: 100%;
	min-height: clamp(620px, 48vw, 760px);
}

.ss-course-method-copy > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-course-method-copy h2 {
	max-width: 12ch;
	margin-bottom: 28px;
}

.ss-course-method-copy > .col-inner > .text,
.ss-course-method-copy p,
.ss-course-method-copy ul {
	max-width: 650px;
}

.ss-course-method-copy p,
.ss-course-checklist li {
	font-size: 17px;
	line-height: 1.65;
}

.ss-course-checklist {
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.ss-course-checklist li {
	position: relative;
	margin: 0;
	padding: 17px 0 17px 34px;
	border-top: 1px solid var(--ss-course-line);
}

.ss-course-checklist li::before {
	content: "";
	position: absolute;
	top: 29px;
	left: 0;
	width: 15px;
	height: 3px;
	background: #e30514;
}

.ss-course-audience-list h3,
.ss-course-faq-list h3 {
	margin: 0;
	padding-top: 30px;
	border-top: 1px solid var(--ss-course-line);
	font-size: clamp(24px, 2.2vw, 32px);
}

.ss-course-audience-list p,
.ss-course-faq-list p {
	margin: 10px 0 30px;
	font-size: 17px;
	line-height: 1.65;
}

.ss-course-instructor-media > .col-inner,
.ss-course-instructor-image,
.ss-course-instructor-image .img-inner,
.ss-course-instructor-copy > .col-inner {
	height: 100%;
	min-height: clamp(620px, 48vw, 760px);
}

.ss-course-v2 .ss-course-instructor-image.ss-fixed-media.img > .img-inner > img {
	object-position: 50% 18%;
}

.ss-course-instructor-copy > .col-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.ss-course-instructor-copy h2 {
	max-width: 10ch;
	margin-bottom: 16px;
}

.ss-course-instructor-copy p,
.ss-course-instructor-copy blockquote {
	max-width: 680px;
	font-size: clamp(17px, 1.35vw, 21px);
	line-height: 1.65;
}

.ss-course-instructor-role {
	margin-bottom: 28px !important;
	color: #e30514 !important;
	font-weight: 700;
}

.ss-course-instructor-copy blockquote {
	margin: 30px 0;
	padding: 24px 0 0;
	border-top: 1px solid var(--ss-course-line);
	color: var(--ss-course-ink);
	font-size: clamp(25px, 2.5vw, 38px);
	font-style: normal;
	font-weight: 600;
	letter-spacing: -.025em;
}

.ss-course-final-cta h2 {
	max-width: 15ch;
	color: #fff;
}

.ss-course-final-cta .button {
	margin-bottom: 0;
}

.ss-exclusive-hero {
	background:
		linear-gradient(110deg, rgba(227, 5, 20, .2), transparent 48%),
		#101218 !important;
}

.ss-exclusive-hero .ss-page-title {
	max-width: 12ch;
	font-size: clamp(62px, 8vw, 132px);
}

.ss-exclusive-hub > .section-content > .row {
	max-width: 1760px !important;
}

.ss-exclusive-card > .col-inner {
	height: 100%;
	border-top: 1px solid var(--ss-course-line);
}

.ss-exclusive-card-image,
.ss-exclusive-card-image .img-inner {
	height: 320px;
}

.ss-exclusive-card .text {
	padding: 30px 0 0;
}

.ss-exclusive-card h2 {
	margin: 0 0 18px;
	font-size: clamp(30px, 2.7vw, 44px);
	line-height: 1.02;
}

.ss-exclusive-card h2 a {
	color: inherit;
}

.ss-exclusive-card p:not(.ss-course-kicker) {
	max-width: 44ch;
	min-height: 5.2em;
	font-size: 16px;
	line-height: 1.65;
}

.ss-exclusive-card-link {
	display: inline-block;
	padding-bottom: 5px;
	border-bottom: 1px solid currentColor;
	color: var(--ss-course-ink);
	font-weight: 700;
}

.ss-exclusive-card-link:hover {
	color: #e30514;
}

.ss-page-title,
.ss-section-heading,
.ss-program-title {
	margin: 0;
	font-family: var(--ss-font);
	font-weight: 700;
	letter-spacing: -.025em;
	text-wrap: balance;
}

.ss-page-title {
	/* Các hero trang phụ có điểm ngắt dòng được biên tập sẵn; 22ch đủ giữ
	   đúng hai dòng mà không làm các câu dài tự vỡ thành dòng thứ ba. */
	max-width: 22ch;
	color: #fff;
	font-size: clamp(42px, 6.2vw, 84px);
	line-height: .98;
}

.ss-program-title {
	max-width: 14ch;
	color: #fff;
	font-size: clamp(40px, 5.5vw, 76px);
	line-height: 1;
}

.ss-section-heading {
	max-width: 22ch;
	color: var(--ss-page-ink);
	font-size: clamp(32px, 4vw, 58px);
	line-height: 1.04;
}

.ss-section-heading--small {
	font-size: clamp(28px, 3.2vw, 44px);
}

.ss-page-lead {
	max-width: 62ch;
	margin: 24px 0 0;
	color: #c9ced8;
	font-size: clamp(18px, 1.7vw, 23px);
	line-height: 1.58;
}

.ss-page-prose {
	max-width: 68ch;
	color: var(--ss-page-body);
	font-size: 18px;
	line-height: 1.72;
}

.ss-page-prose > :last-child,
.ss-page-lead > :last-child {
	margin-bottom: 0;
}

.ss-red-line {
	width: 58px;
	height: 3px;
	margin: 0 0 24px;
	background: var(--ss-page-red);
}

/* Hero trang phụ dùng cùng lockup với trang chủ: vạch dài nằm bên trái,
   ngang với dòng đầu của tiêu đề. Grid giữ mép tiêu đề và câu dẫn thẳng nhau. */
.sansan-dark-hero .ss-page-hero .text {
	width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-left: 0 !important;
}

.ss-hero-lockup {
	display: grid;
	grid-template-columns: clamp(120px, 12vw, 190px) minmax(0, 1fr);
	gap: clamp(36px, 4vw, 64px);
	align-items: start;
	width: 100%;
	/* Giữ đỉnh tiêu đề của mọi trang ở cùng cao độ với trang Doanh nghiệp,
	   kể cả khi câu dẫn của trang đó ngắn hơn một dòng. */
	min-height: 298px;
}

.ss-hero-side-line {
	display: block;
	width: 100%;
	height: 3px;
	margin-top: .58em;
	background: #fff;
}

.ss-hero-copy {
	min-width: 0;
}

.ss-meta-rail > .col-inner {
	border-left: 1px solid rgba(255, 255, 255, .25);
}

.ss-meta-list {
	margin: 0;
}

.ss-meta-row {
	display: grid;
	grid-template-columns: minmax(110px, .7fr) minmax(0, 1.3fr);
	gap: 20px;
	padding: 17px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.ss-meta-row:first-child {
	border-top: 1px solid rgba(255, 255, 255, .18);
}

.ss-meta-row dt {
	color: #9fa6b4;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ss-meta-row dd {
	margin: 0;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.45;
}

.ss-editorial-row > .col-inner {
	height: 100%;
	border-top: 1px solid var(--ss-page-line);
}

.ss-editorial-number {
	margin: 0 0 34px;
	color: var(--ss-page-red);
	font-size: 14px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.ss-editorial-row h3,
.ss-path-row h3,
.ss-module-row h3 {
	margin: 0 0 12px;
	color: var(--ss-page-ink);
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: 1.15;
}

.ss-editorial-row p,
.ss-path-row p,
.ss-module-row p {
	margin: 0;
	color: var(--ss-page-muted);
	font-size: 16px;
	line-height: 1.65;
}

.ss-path-row > .col-inner,
.ss-module-row > .col-inner {
	height: 100%;
	border-top: 1px solid var(--ss-page-line);
}

.ss-path-row a,
.ss-module-row a {
	color: inherit;
}

.ss-path-row a:hover h3,
.ss-module-row a:hover h3 {
	color: var(--ss-page-red);
}

.ss-path-arrow {
	display: inline-block;
	margin-top: 24px;
	color: var(--ss-page-red);
	font-size: 22px;
	transition: transform .2s ease;
}

.ss-path-row a:hover .ss-path-arrow {
	transform: translateX(5px);
}

.ss-dark-section {
	background: var(--ss-page-dark) !important;
}

.ss-dark-section .ss-section-heading,
.ss-dark-section h2,
.ss-dark-section h3 {
	color: #fff;
}

.ss-dark-section .ss-page-prose,
.ss-dark-section p {
	color: #c9ced8;
}

.ss-loop-step > .col-inner {
	height: 100%;
	border-top: 1px solid rgba(255, 255, 255, .25);
}

.ss-loop-step strong {
	display: block;
	margin-bottom: 12px;
	color: #fff;
	font-size: clamp(22px, 2vw, 29px);
	letter-spacing: -.02em;
}

.ss-loop-step p {
	margin: 0;
	color: #bfc5d0;
	font-size: 15px;
	line-height: 1.6;
}

.ss-loop-index {
	display: block;
	margin-bottom: 42px;
	color: var(--ss-page-red);
	font-size: 13px;
	font-weight: 700;
}

.ss-output-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ss-output-list li {
	position: relative;
	margin: 0;
	padding: 18px 0 18px 36px;
	border-top: 1px solid var(--ss-page-line);
	color: var(--ss-page-ink);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.5;
}

.ss-output-list li::before {
	content: "";
	position: absolute;
	top: 26px;
	left: 2px;
	width: 13px;
	height: 3px;
	background: var(--ss-page-red);
}

.ss-fact-band > .col-inner {
	height: 100%;
	border-top: 3px solid var(--ss-page-red);
	background: #fff;
}

.ss-fact-band strong {
	display: block;
	margin-bottom: 8px;
	color: var(--ss-page-ink);
	font-size: 24px;
	line-height: 1.15;
}

.ss-fact-band p {
	margin: 0;
	color: var(--ss-page-muted);
}

.ss-course-placeholder {
	border: 1px solid var(--ss-page-line);
	background: #fff;
}

.ss-course-placeholder h3 {
	font-size: clamp(27px, 3vw, 40px);
	letter-spacing: -.025em;
}

.ss-course-placeholder p {
	max-width: 54ch;
	color: var(--ss-page-muted);
	font-size: 17px;
	line-height: 1.65;
}

.ss-action-panel > .col-inner {
	border-top: 3px solid var(--ss-page-red);
}

.ss-action-panel .button {
	margin-bottom: 0;
}

.ss-course-single .product.type-product {
	margin: 0;
}

@media (max-width: 849px) {
	.ss-hbs-program-title {
		font-size: clamp(64px, 12vw, 112px);
	}

	.ss-hbs-program-title--long {
		font-size: clamp(58px, 10.5vw, 96px);
	}

	.ss-hbs-program-title--very-long {
		font-size: clamp(52px, 9.5vw, 86px);
	}

	.ss-hbs-media-col--last {
		margin-top: 30px;
	}

	.ss-hbs-media-col--last .ss-hbs-media-slot {
		min-height: 320px;
	}

	.ss-meta-rail > .col-inner {
		border-top: 1px solid rgba(255, 255, 255, .25);
		border-left: 0;
	}

	.ss-loop-index,
	.ss-editorial-number {
		margin-bottom: 24px;
	}

	.ss-course-thesis-title > .col-inner,
	.ss-course-thesis-copy > .col-inner,
	.ss-course-method-media > .col-inner,
	.ss-course-method-image,
	.ss-course-method-image .img-inner,
	.ss-course-method-copy > .col-inner,
	.ss-course-instructor-media > .col-inner,
	.ss-course-instructor-image,
	.ss-course-instructor-image .img-inner,
	.ss-course-instructor-copy > .col-inner {
		min-height: 540px;
	}
}

@media (max-width: 1024px) {
	/* Trang chủ cũng bỏ vạch ở màn hẹp để giữ đủ bề ngang cho tiêu đề. */
	.ss-hero-lockup {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
		min-height: 0;
	}

	.ss-hero-side-line {
		display: none;
	}
}

@media (max-width: 549px) {
	.ss-hbs-program-title {
		margin-bottom: 20px;
		font-size: clamp(54px, 19vw, 88px);
		line-height: .95;
	}

	.ss-hbs-program-title--long,
	.ss-hbs-program-title--very-long {
		font-size: clamp(46px, 15vw, 68px);
		line-height: .95;
	}

	.ss-hbs-media-row {
		gap: 16px 0;
	}

	.ss-hbs-media-col--last {
		margin-top: 0;
	}

	.ss-hbs-media-slot,
	.ss-hbs-media-col--last .ss-hbs-media-slot {
		min-height: 210px;
	}

	.ss-hbs-media-col--main .ss-hbs-media-slot {
		min-height: 300px;
	}

	.ss-page-title,
	.ss-program-title {
		font-size: clamp(38px, 13vw, 58px);
	}

	.ss-section-heading {
		font-size: clamp(31px, 10vw, 44px);
	}

	.ss-meta-row {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.ss-page-prose {
		font-size: 17px;
	}

	.ss-course-v2 h2 {
		font-size: clamp(38px, 12vw, 52px);
	}

	.ss-course-fact > .col-inner {
		border-bottom: 1px solid rgba(255, 255, 255, .22);
	}

	.ss-course-thesis-title > .col-inner,
	.ss-course-thesis-copy > .col-inner,
	.ss-course-method-copy > .col-inner,
	.ss-course-instructor-copy > .col-inner {
		min-height: 0;
	}

	.ss-course-method-media > .col-inner,
	.ss-course-method-image,
	.ss-course-method-image .img-inner,
	.ss-course-instructor-media > .col-inner,
	.ss-course-instructor-image,
	.ss-course-instructor-image .img-inner {
		min-height: 420px;
	}

	.ss-course-module .text-inner {
		grid-template-columns: 46px 1fr;
		gap: 14px;
	}

	.ss-course-module p {
		grid-column: 2;
	}

	.ss-exclusive-card-image,
	.ss-exclusive-card-image .img-inner {
		height: 240px;
	}

	.ss-exclusive-card p:not(.ss-course-kicker) {
		min-height: 0;
	}
}

@media (hover: none) {
	.ss-path-row a:hover .ss-path-arrow {
		transform: none;
	}
}

/* SEO course pages: headings must stand on their own. The project explicitly
 * forbids eyebrow/kicker copy above course headings. Keep this guard in place
 * so an older saved UX Builder block cannot reintroduce it visually. */
.ss-course-v2 .ss-course-kicker {
	display: none !important;
}

.ss-seo-course-page + .ss-seo-course-intro .text-inner > p:first-child,
.ss-seo-course-pain .text-inner > p,
.ss-seo-course-relations .text-inner > p {
	max-width: 820px;
}

.ss-seo-course-grid > .col > .col-inner {
	height: 100%;
}

.ss-seo-course-card > .col-inner {
	padding: clamp(28px, 3vw, 48px);
	border-top: 4px solid var(--ss-red, #e30514);
	background: #fff;
}

.ss-seo-course-card h3 {
	margin: 0 0 18px;
	font-size: clamp(24px, 2vw, 34px);
	line-height: 1.08;
}

.ss-seo-course-card p {
	margin: 0;
	font-size: 18px;
	line-height: 1.65;
}

.ss-seo-course-relation-card > .col-inner {
	border-top-color: #101218;
	background: #f3f1ed;
}

.ss-seo-course-intro h2,
.ss-seo-course-pain h2,
.ss-seo-course-relations h2 {
	text-wrap: balance;
}

@media (max-width: 849px) {
	.ss-seo-course-card > .col-inner {
		padding: 28px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ss-path-arrow {
		transition: none;
	}
}

/* =====================================================
   COURSE CLEAN 2026-09-16

   Phần banner ba ảnh vẫn dùng nguyên hệ HBS ở trên. Các section có class
   ss-course-clean nằm phía dưới banner và theo một nhịp trình bày nhẹ hơn:
   nền sáng, một đường kẻ duy nhất, ảnh/text rõ ràng và không dùng số trang trí
   hay eyebrow đặt trước heading. Nội dung, ảnh và breakpoint vẫn sửa trực tiếp
   trong UX Builder.
   ===================================================== */

.ss-course-clean {
	--ss-clean-ink: #12151b;
	--ss-clean-body: #4d525b;
	--ss-clean-red: #b20812;
	--ss-clean-paper: #f3f1ed;
	--ss-clean-line: rgba(18, 21, 27, .2);
	background: #fff !important;
}

.ss-course-clean:nth-of-type(even) {
	background: var(--ss-clean-paper) !important;
}

.ss-course-clean > .section-content > .row:not(.row-full-width) {
	max-width: min(1440px, calc(100vw - 80px)) !important;
}

.ss-course-clean h2 {
	max-width: 18ch;
	color: var(--ss-clean-ink) !important;
	font-size: clamp(38px, 4.4vw, 66px);
	line-height: 1.02;
}

.ss-course-clean h3 {
	color: var(--ss-clean-ink) !important;
}

.ss-course-clean p,
.ss-course-clean li {
	color: var(--ss-clean-body) !important;
}

/* Bảo vệ ngôn ngữ thiết kế nếu một template cũ bị chèn lại. */
.ss-course-clean .ss-course-kicker,
.ss-course-clean .ss-course-instructor-role,
.ss-course-clean .ss-course-numbered-item .text-inner > span:first-child,
.ss-course-clean .ss-course-module .text-inner > span:first-child {
	display: none !important;
}

/* Một đường kẻ đỏ duy nhất thay cho số/nhãn trang trí. */
.ss-course-clean:not(.ss-course-facts):not(.ss-course-method):not(.ss-course-instructor):not(.ss-course-final-cta)
	> .section-content > .row:first-child > .col:first-child .text-inner > h2:first-child::before {
	display: block;
	width: clamp(96px, 15vw, 210px);
	height: 3px;
	margin: 0 0 clamp(28px, 3.4vw, 48px);
	background: var(--ss-clean-red);
	content: "";
}

/* Dải thông tin nhanh giữ độ tương phản nhưng giảm chiều cao và độ nặng. */
.ss-course-clean.ss-course-facts {
	background: var(--ss-clean-ink) !important;
}

.ss-course-clean .ss-course-fact > .col-inner {
	border-color: rgba(255, 255, 255, .18);
}

.ss-course-clean .ss-course-fact strong {
	font-size: clamp(25px, 2.1vw, 36px);
}

.ss-course-clean .ss-course-fact span {
	color: #c9ccd2 !important;
}

/* Tổng quan: hai cột sáng, tránh mảng đỏ/beige quá lớn. */
.ss-course-clean.ss-course-thesis .ss-course-thesis-title > .col-inner,
.ss-course-clean.ss-course-thesis .ss-course-thesis-copy > .col-inner {
	min-height: 0;
	background: #fff !important;
}

.ss-course-clean.ss-course-thesis .ss-course-thesis-title > .col-inner {
	border-top: 3px solid var(--ss-clean-red);
}

.ss-course-clean.ss-course-thesis .ss-course-thesis-title h2 {
	max-width: 13ch;
	color: var(--ss-clean-ink) !important;
}

.ss-course-clean.ss-course-thesis .ss-course-thesis-copy h2,
.ss-course-clean.ss-course-thesis .ss-course-thesis-copy h3 {
	max-width: 18ch;
	color: var(--ss-clean-ink) !important;
}

/* Pain point, entity/semantic và các đầu ra: lưới editorial, không card nổi. */
.ss-course-clean .ss-seo-course-card > .col-inner,
.ss-course-clean .ss-course-numbered-item > .col-inner {
	height: 100%;
	padding: clamp(26px, 2.7vw, 42px) 0 0;
	border-top: 1px solid var(--ss-clean-red);
	background: transparent !important;
	box-shadow: none;
}

.ss-course-clean .ss-seo-course-card h3,
.ss-course-clean .ss-course-numbered-item h3 {
	margin: 0 0 12px;
	font-size: clamp(25px, 2vw, 34px);
	line-height: 1.1;
}

.ss-course-clean .ss-seo-course-card p,
.ss-course-clean .ss-course-numbered-item p {
	max-width: 38ch;
	font-size: 17px;
	line-height: 1.65;
}

/* Curriculum đổi từ mảng đen dày sang danh sách chương trình sáng, dễ quét. */
.ss-course-clean.ss-course-curriculum {
	background: var(--ss-clean-paper) !important;
}

.ss-course-clean.ss-course-curriculum h2,
.ss-course-clean.ss-course-curriculum h3,
.ss-course-clean.ss-course-curriculum p {
	color: var(--ss-clean-ink) !important;
}

.ss-course-clean .ss-course-module > .col-inner {
	border-top: 1px solid var(--ss-clean-line);
}

.ss-course-clean .ss-course-module:last-child > .col-inner {
	border-bottom: 1px solid var(--ss-clean-line);
}

.ss-course-clean .ss-course-module .text-inner {
	display: grid;
	grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
	gap: clamp(28px, 4vw, 72px);
	align-items: start;
	padding: 34px 0;
}

.ss-course-clean .ss-course-module h3 {
	font-size: clamp(25px, 2.2vw, 36px);
}

.ss-course-clean .ss-course-module p {
	font-size: 17px;
	line-height: 1.65;
}

/* Hai kiểu ảnh – nội dung dùng chung một tỷ lệ và crop cố định. */
.ss-course-clean.ss-course-method,
.ss-course-clean.ss-course-instructor {
	background: #fff !important;
}

.ss-course-clean .ss-course-method-media > .col-inner,
.ss-course-clean .ss-course-method-image,
.ss-course-clean .ss-course-method-image .img-inner,
.ss-course-clean .ss-course-method-copy > .col-inner,
.ss-course-clean .ss-course-instructor-media > .col-inner,
.ss-course-clean .ss-course-instructor-image,
.ss-course-clean .ss-course-instructor-image .img-inner,
.ss-course-clean .ss-course-instructor-copy > .col-inner {
	min-height: clamp(520px, 42vw, 680px);
}

.ss-course-clean .ss-course-method-copy > .col-inner,
.ss-course-clean .ss-course-instructor-copy > .col-inner {
	background: #fff !important;
}

.ss-course-clean .ss-course-method-copy h2,
.ss-course-clean .ss-course-instructor-copy h2 {
	max-width: 13ch;
	padding-top: 28px;
	border-top: 3px solid var(--ss-clean-red);
}

.ss-course-clean .ss-course-checklist li {
	border-top: 1px solid var(--ss-clean-line);
}

/* FAQ/audience giữ một vạch mỗi mục; tuyệt đối không tạo vạch thứ hai. */
.ss-course-clean .ss-course-audience-list h3,
.ss-course-clean .ss-course-faq-list h3 {
	border-top: 1px solid var(--ss-clean-line);
}

.ss-course-clean.ss-course-schedule {
	background: var(--ss-clean-paper) !important;
}

.ss-course-clean.ss-course-final-cta {
	background: var(--ss-clean-red) !important;
}

.ss-course-clean.ss-course-final-cta h2,
.ss-course-clean.ss-course-final-cta p {
	color: #fff !important;
}

/* Template banner ảnh dùng ở giữa nội dung, không thay banner ba ảnh đầu trang. */
.ss-course-body-banner {
	position: relative;
	overflow: hidden;
	min-height: clamp(460px, 48vw, 720px);
}

.ss-course-body-banner .section-bg-overlay {
	background: linear-gradient(90deg, rgba(10, 12, 18, .84), rgba(10, 12, 18, .12) 72%) !important;
}

.ss-course-body-banner .text-box {
	max-width: 760px;
}

.ss-course-body-banner h2,
.ss-course-body-banner p {
	color: #fff !important;
}

@media (min-width: 1600px) {
	.ss-course-clean > .section-content > .row:not(.row-full-width) {
		max-width: 1480px !important;
	}
}

@media (max-width: 849px) {
	.ss-course-clean > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 48px) !important;
	}

	.ss-course-clean .ss-course-module .text-inner {
		grid-template-columns: minmax(190px, .7fr) minmax(0, 1.3fr);
		gap: 28px;
	}
}

@media (max-width: 549px) {
	.ss-course-clean > .section-content > .row:not(.row-full-width) {
		max-width: calc(100vw - 32px) !important;
	}

	.ss-course-clean h2 {
		font-size: clamp(34px, 11vw, 46px);
	}

	.ss-course-clean .ss-course-module .text-inner {
		grid-template-columns: 1fr;
		gap: 10px;
		padding: 26px 0;
	}

	.ss-course-clean .ss-course-method-media > .col-inner,
	.ss-course-clean .ss-course-method-image,
	.ss-course-clean .ss-course-method-image .img-inner,
	.ss-course-clean .ss-course-instructor-media > .col-inner,
	.ss-course-clean .ss-course-instructor-image,
	.ss-course-clean .ss-course-instructor-image .img-inner {
		min-height: 380px;
	}

	.ss-course-clean .ss-course-method-copy > .col-inner,
	.ss-course-clean .ss-course-instructor-copy > .col-inner {
		min-height: 0;
	}

	.ss-course-body-banner {
		min-height: 520px;
	}
}

/* =====================================================
   COURSE VISUAL V2 — 2026-09-16

   Đây là lớp bố cục mới cho toàn bộ phần bên dưới hero ba ảnh. Khác bản
   "clean" trước, V2 có media thật trong từng chặng đọc: tổng quan, vấn đề,
   đối tượng, module, phương pháp và giảng viên. Ảnh là UX Image element để
   Replace image không làm đổi kích thước khung.
   ===================================================== */

.ss-course-visual-v2 {
	--ss-course-visual-gap: clamp(30px, 4vw, 72px);
}

/* Không lặp cùng một dấu gạch trước mọi heading. Chỉ ba section có vạch để
   tạo nhịp, các section còn lại dùng ảnh hoặc khoảng trắng làm điểm dừng. */
.ss-course-visual-v2 > .section-content > .row:first-child > .col:first-child .text-inner > h2:first-child::before {
	display: none !important;
}

.ss-course-visual-v2.ss-seo-course-pain
	> .section-content > .row:first-child > .col:first-child .text-inner > h2:first-child::before,
.ss-course-visual-v2.ss-course-outcomes
	> .section-content > .row:first-child > .col:first-child .text-inner > h2:first-child::before,
.ss-course-visual-v2.ss-seo-course-relations
	> .section-content > .row:first-child > .col:first-child .text-inner > h2:first-child::before {
	display: block !important;
}

.ss-course-visual-v2 .ss-course-editorial-media,
.ss-course-visual-v2 .ss-course-editorial-media .img-inner {
	height: clamp(340px, 32vw, 520px);
}

.ss-course-visual-v2 .ss-course-editorial-media {
	height: clamp(340px, 32vw, 520px) !important;
	margin-top: clamp(34px, 4vw, 58px);
	overflow: hidden;
}

.ss-course-visual-v2 .ss-course-editorial-media img,
.ss-course-visual-v2 .ss-course-feature-media img,
.ss-course-visual-v2 .ss-course-audience-media img,
.ss-course-visual-v2 .ss-course-module-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Tổng quan giống một spread biên tập: heading + ảnh ở trái, nội dung ở phải. */
.ss-course-visual-v2.ss-seo-course-intro > .section-content > .row,
.ss-course-visual-v2.ss-course-thesis > .section-content > .row {
	align-items: start;
}

.ss-course-visual-v2.ss-seo-course-intro h2,
.ss-course-visual-v2.ss-course-thesis h2,
.ss-course-visual-v2.ss-course-thesis h3 {
	max-width: 18ch;
	font-size: clamp(38px, 3.5vw, 52px);
	line-height: 1.04;
}

.ss-course-visual-v2.ss-seo-course-intro p,
.ss-course-visual-v2.ss-course-thesis p {
	max-width: 58ch;
	font-size: clamp(18px, 1.3vw, 21px);
	line-height: 1.68;
}

/* Chương trình độc quyền dùng đúng nhịp image-left / copy-right: ảnh là một
   mảng độc lập, luận điểm và tổng quan nằm chung một cột để không tạo khoảng
   trống giả ở nửa phải. */
.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-title.ss-course-thesis-v2-split > .col-inner {
	height: 100%;
	border-top: 0;
}

.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media,
.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media .img-inner {
	height: 720px !important;
	min-height: 720px;
	margin: 0;
}

.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy > .col-inner {
	display: flex;
	min-height: 720px;
	flex-direction: column;
	justify-content: center;
}

.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy h2 {
	max-width: 17ch;
	margin-bottom: clamp(42px, 5vw, 74px);
}

.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy h3 {
	max-width: 22ch;
	margin-bottom: 20px;
	font-size: clamp(27px, 2.2vw, 38px);
}

/* Ảnh ngang lớn nằm trong nội dung, không phải hero đầu trang. */
.ss-course-visual-v2 .ss-course-feature-row {
	margin-top: clamp(38px, 5vw, 72px);
	margin-bottom: clamp(40px, 5vw, 76px);
}

.ss-course-visual-v2 .ss-course-feature-media,
.ss-course-visual-v2 .ss-course-feature-media .img-inner {
	height: clamp(420px, 42vw, 650px);
}

.ss-course-visual-v2 .ss-course-feature-media {
	height: clamp(420px, 42vw, 650px) !important;
	overflow: hidden;
}

/* Đối tượng học: ảnh chiếm một nửa trang, tiêu chí nằm ở nửa còn lại. */
.ss-course-visual-v2 .ss-course-audience-media,
.ss-course-visual-v2 .ss-course-audience-media .img-inner {
	height: clamp(360px, 36vw, 540px);
}

.ss-course-visual-v2 .ss-course-audience-media {
	height: clamp(360px, 36vw, 540px) !important;
	margin-top: 36px;
	overflow: hidden;
}

.ss-course-visual-v2 .ss-seo-course-audience-card > .col-inner {
	display: flex;
	height: 100%;
	flex-direction: column;
}

.ss-course-visual-v2 .ss-seo-course-audience-card .ss-course-audience-media {
	height: 280px !important;
	margin: 0 0 28px;
}

.ss-course-visual-v2 .ss-seo-course-audience-card .ss-course-audience-media,
.ss-course-visual-v2 .ss-seo-course-audience-card .ss-course-audience-media .img-inner {
	height: 280px;
}

/* Danh sách module thành chuỗi editorial image/text, ảnh đổi bên theo nhịp. */
.ss-course-visual-v2 .ss-course-module > .col-inner {
	display: grid;
	grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
	gap: var(--ss-course-visual-gap);
	align-items: center;
	padding: clamp(34px, 4vw, 60px) 0;
}

.ss-course-visual-v2 .ss-course-module-image,
.ss-course-visual-v2 .ss-course-module-image .img-inner {
	height: clamp(250px, 25vw, 390px);
}

.ss-course-visual-v2 .ss-course-module-image {
	height: clamp(250px, 25vw, 390px) !important;
	overflow: hidden;
}

.ss-course-visual-v2 .ss-course-module .text-inner {
	display: block;
	padding: 0;
}

.ss-course-visual-v2 .ss-course-module h3 {
	max-width: 17ch;
	margin: 0 0 16px;
	font-size: clamp(29px, 2.7vw, 43px);
	line-height: 1.06;
}

.ss-course-visual-v2 .ss-course-module p {
	max-width: 48ch;
	margin: 0;
	font-size: 18px;
}

.ss-course-visual-v2 .ss-course-module:nth-child(even) .ss-course-module-image {
	grid-column: 2;
	grid-row: 1;
}

.ss-course-visual-v2 .ss-course-module:nth-child(even) .text {
	grid-column: 1;
	grid-row: 1;
}

/* Text card còn lại chỉ giữ đường kẻ mảnh; không tạo các hộp giống nhau. */
.ss-course-visual-v2 .ss-seo-course-card > .col-inner,
.ss-course-visual-v2 .ss-course-numbered-item > .col-inner {
	padding-right: clamp(16px, 2vw, 30px);
}

.ss-course-visual-v2.ss-course-outcomes .ss-course-numbered-grid > .col:nth-child(2),
.ss-course-visual-v2.ss-course-outcomes .ss-course-numbered-grid > .col:nth-child(5) {
	transform: translateY(clamp(0px, 2vw, 28px));
}

.ss-course-visual-v2.ss-course-instructor .ss-course-instructor-media {
	padding: clamp(24px, 3.2vw, 52px) 0 clamp(24px, 3.2vw, 52px) clamp(24px, 3.2vw, 52px) !important;
}

.ss-course-visual-v2.ss-course-instructor .ss-course-instructor-copy > .col-inner {
	padding-left: clamp(42px, 7vw, 118px) !important;
	padding-right: clamp(34px, 6vw, 96px) !important;
}

@media (min-width: 1600px) {
	.ss-course-visual-v2 .ss-course-feature-media {
		height: 690px !important;
	}

	.ss-course-visual-v2 .ss-course-feature-media,
	.ss-course-visual-v2 .ss-course-feature-media .img-inner {
		height: 690px;
	}

	.ss-course-visual-v2 .ss-course-module-image {
		height: 420px !important;
	}

	.ss-course-visual-v2 .ss-course-module-image,
	.ss-course-visual-v2 .ss-course-module-image .img-inner {
		height: 420px;
	}
}

@media (max-width: 849px) {
	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media,
	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media .img-inner,
	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy > .col-inner {
		height: 560px !important;
		min-height: 560px;
	}

	.ss-course-visual-v2 .ss-course-feature-media {
		height: 440px !important;
	}

	.ss-course-visual-v2 .ss-course-feature-media,
	.ss-course-visual-v2 .ss-course-feature-media .img-inner {
		height: 440px;
	}

	.ss-course-visual-v2 .ss-course-module > .col-inner {
		grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
		gap: 34px;
	}

	.ss-course-visual-v2 .ss-course-module:nth-child(even) .ss-course-module-image,
	.ss-course-visual-v2 .ss-course-module:nth-child(even) .text {
		grid-column: auto;
		grid-row: auto;
	}
}

@media (max-width: 549px) {
	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media,
	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-v2-split .ss-course-editorial-media .img-inner {
		height: 380px !important;
		min-height: 380px;
	}

	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy > .col-inner {
		height: auto !important;
		min-height: 0;
	}

	.ss-course-visual-v2.ss-course-thesis .ss-course-thesis-copy h2 {
		margin-bottom: 36px;
	}

	.ss-course-visual-v2 .ss-course-editorial-media,
	.ss-course-visual-v2 .ss-course-feature-media,
	.ss-course-visual-v2 .ss-course-audience-media {
		height: 290px !important;
	}

	.ss-course-visual-v2 .ss-course-editorial-media,
	.ss-course-visual-v2 .ss-course-editorial-media .img-inner,
	.ss-course-visual-v2 .ss-course-feature-media,
	.ss-course-visual-v2 .ss-course-feature-media .img-inner,
	.ss-course-visual-v2 .ss-course-audience-media,
	.ss-course-visual-v2 .ss-course-audience-media .img-inner {
		height: 290px;
	}

	.ss-course-visual-v2 .ss-course-module > .col-inner {
		grid-template-columns: 1fr;
		gap: 26px;
		padding: 32px 0;
	}

	.ss-course-visual-v2 .ss-course-module-image,
	.ss-course-visual-v2 .ss-course-module-image .img-inner {
		height: 260px;
	}

	.ss-course-visual-v2 .ss-course-module-image {
		height: 260px !important;
	}

	.ss-course-visual-v2 .ss-course-module h3 {
		font-size: 30px;
	}

	.ss-course-visual-v2.ss-course-outcomes .ss-course-numbered-grid > .col:nth-child(2),
	.ss-course-visual-v2.ss-course-outcomes .ss-course-numbered-grid > .col:nth-child(5) {
		transform: none;
	}

	.ss-course-visual-v2.ss-course-instructor .ss-course-instructor-media {
		padding: 24px 24px 0 !important;
	}

	.ss-course-visual-v2.ss-course-instructor .ss-course-instructor-copy > .col-inner {
		padding: 48px 24px 56px !important;
	}
}
