@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/roboto-regular.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/roboto-medium.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/roboto-bold.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("assets/fonts/roboto-black.woff2") format("woff2");
}

:root {
  --canvas: #050505; --ink: #f7f7f7; --muted: #b7b7b7; --accent: #f7f7f7;
  --line: #343434; --surface: #0d0d0d; --font-content: "Roboto", sans-serif;
  --title-hero: 88px; --title-section: 56px; --title-subsection: 30px; --title-card: 20px;
  --content-width: 1200px;
  --section-space: 96px; --grid-space: 32px; --card-space: 24px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; color-scheme: dark; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
html, body, main { margin: 0; background: var(--canvas); }
body { color: var(--ink); font-family: var(--font-content); font-size: 20px; line-height: 1.65; overflow-wrap: anywhere; }
main { overflow: clip; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 10px 16px; background: var(--ink); color: var(--canvas); transform: translateY(-180%); }
.skip-link:focus { transform: none; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.site-header { position: sticky; top: 0; z-index: 80; min-height: 76px; border-bottom: 1px solid var(--line); background: #050505; transition: background-color .25s ease, backdrop-filter .25s ease; }
.site-header.is-scrolled, .site-header.menu-open { background: rgba(5,5,5,.9); backdrop-filter: blur(16px); }
.header-inner { position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 75px; width: min(calc(100% - 96px), 1440px); margin-inline: auto; }
.site-header a { display: inline-flex; min-height: 44px; align-items: center; }
.site-header img { width: 160px; }
.primary-navigation { display: flex; align-items: center; gap: 30px; }
.primary-navigation[hidden] { display: none; }
@media (min-width: 768px) { .primary-navigation[hidden] { display: flex; } }
.nav-link, .nav-cta { color: var(--muted); font-size: 16px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.nav-link:hover { color: var(--ink); }
.nav-cta { min-height: 42px !important; padding: 8px 18px; border: 1px solid var(--ink); background: var(--ink); color: var(--canvas); }
.nav-cta:hover { background: transparent; color: var(--ink); }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: var(--ink); cursor: pointer; }
.menu-toggle span { display: block; width: 22px; height: 1px; margin: 6px auto; background: currentColor; transition: transform .2s ease; }
.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
.sales-section, .registration-panel { scroll-margin-top: 84px; }
.sales-section { background: var(--canvas); padding: 128px 24px; border-bottom: 0; }
.section-inner { width: min(100%, var(--content-width)); margin-inline: auto; }
.section-inner > * { max-width: 900px; }
.section-inner > .hero-title, .section-inner > .section-title { max-width: 1080px; }
.section-inner > [data-content-role], .section-inner > [data-conversion-step], .section-inner > ol, .section-inner > ul { max-width: 1080px; }
h1, h2, h3 { margin: 0; font-family: inherit; font-weight: 700; line-height: 1.08; letter-spacing: -.04em; text-wrap: balance; }
.hero-title { font-size: var(--title-hero); }
.section-title { font-size: var(--title-section); }
.subsection-title { font-size: var(--title-subsection); }
.card-title { font-size: var(--title-card); }
.eyebrow { margin: 0 0 24px; color: var(--accent); font-size: 14px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.hero-title + p, .section-title + p { margin-top: 36px; }
p { color: var(--muted); }
strong, b { color: var(--ink); }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; max-width: 100%; margin-top: 30px; padding: 13px 24px; border: 1px solid var(--accent); border-radius: 2px; background: var(--accent); color: var(--canvas); font-family: inherit; font-weight: 700; line-height: 1.25; text-align: center; text-decoration: none; cursor: pointer; }
.button:hover { background: transparent; color: var(--accent); }
.button:disabled { opacity: .55; cursor: wait; }
[data-content-role="old-ai"], [data-content-role="new-ai"], [data-content-role="ai-strengths"], [data-content-role="human-strengths"], [data-content-role="positive-fit"], [data-content-role="negative-fit"] { display: inline-grid; vertical-align: top; width: calc(50% - 14px); margin-top: 48px; padding: 32px; border: 1px solid var(--line); background: var(--surface); }
[data-content-role="old-ai"], [data-content-role="ai-strengths"], [data-content-role="positive-fit"] { margin-right: 23px; }
[data-content-role] ul, [data-content-role] ol, .section-inner > ul, .section-inner > ol { padding: 0; list-style: none; }
[data-content-role] li, .section-inner > ul > li, .section-inner > ol > li { padding: 15px 0; border-top: 1px solid var(--line); }
[data-content-role] li:first-child, .section-inner > ul > li:first-child, .section-inner > ol > li:first-child { border-top: 0; }
[data-closing-statement], [data-tool-explanation] { margin-top: 36px; padding: 26px 0 0; border-top: 1px solid var(--accent); color: var(--ink); font-weight: 500; }
[data-content-role="pain"], [data-content-role="mindsets"], [data-content-role="tool-roles"], [data-content-role="entitlements"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; margin-top: 48px; }
[data-content-role="costs"] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 48px; background: var(--line); border: 1px solid var(--line); }
[data-content-role="costs"] [data-content-item] { margin: 0; padding: 26px; background: var(--canvas); }
[data-resource], [data-hidden-cost], [data-stage-name], [data-stage-explanation] { display: block; }
[data-resource], [data-stage-name] { margin-bottom: 8px; color: var(--accent); text-transform: uppercase; }
[data-content-role="mechanism"], [data-content-role="applied-method"], [data-content-role="curriculum"], [data-content-role="authority"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 48px; background: var(--line); border: 1px solid var(--line); }
[data-content-role="mechanism"] li, [data-content-role="applied-method"] li, [data-content-role="curriculum"] li, [data-content-role="authority"] li { min-width: 0; padding: 28px; border: 0; background: var(--canvas); }
#hanh-trinh-7-tuan .section-inner > ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 48px; background: var(--line); border: 1px solid var(--line); }
#hanh-trinh-7-tuan .section-inner > ol li { min-width: 0; padding: 24px; border: 0; background: var(--canvas); }
blockquote { margin: 32px 0 0; padding: 24px; border-left: 3px solid var(--accent); background: var(--surface); color: var(--ink); }
.verification-status, [data-verification-status], [data-proof-placeholder] { margin-top: 32px; padding: 24px; border: 1px solid var(--line); background: var(--surface); }
[data-proof-placeholder] { display: inline-block; width: calc(50% - 14px); min-height: 180px; color: var(--muted); }
[data-proof-placeholder] + [data-proof-placeholder] { margin-left: 23px; }
.verification-label { color: var(--accent); }
.price { margin: 40px 0 24px; color: var(--ink); font-size: clamp(50px, 7vw, 92px); font-weight: 700; line-height: 1; letter-spacing: -.05em; }
.guarantee { margin-top: 44px; padding: 28px 0; border-block: 1px solid var(--accent); color: var(--accent); font-size: clamp(38px, 6vw, 72px); font-weight: 700; line-height: 1; }
[data-conversion-step] { margin-top: 80px; }
[data-conversion-step="faq"] { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr); gap: 0 64px; }
[data-conversion-step="faq"] .subsection-title { grid-row: span 2; }
details { border-top: 1px solid var(--line); }
summary { min-height: 52px; padding: 14px 0; color: var(--ink); font-weight: 700; cursor: pointer; }
details p { margin: 0 0 20px; }
[data-conversion-step="schedule"], [data-conversion-step="investment"] { display: inline-block; vertical-align: top; width: calc(50% - 14px); }
[data-conversion-step="schedule"] { margin-right: 23px; }
[data-content-role="form"] { padding: clamp(28px, 5vw, 64px); border: 1px solid var(--line); background: var(--surface); }
[data-demo-notice] { padding: 12px 16px; border-left: 3px solid var(--accent); }
form { margin-top: 34px; }
form > label { display: grid; gap: 7px; margin-top: 20px; color: var(--ink); font-weight: 500; }
input, textarea, select { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #777; border-radius: 2px; background: var(--canvas); color: var(--ink); font-family: inherit; }
textarea { min-height: 130px; resize: vertical; }
.consent { display: flex; align-items: flex-start; min-height: 44px; }
.consent input { flex: 0 0 22px; width: 22px; min-height: 22px; margin-top: 3px; }
[data-error-for] { display: block; min-height: 20px; color: var(--muted); }
[data-form-status] { min-height: 28px; }
@media (max-width: 1024px) {
  :root { --title-hero: 72px; --title-section: 46px; --title-subsection: 28px; --title-card: 20px; }
  .sales-section { padding-block: 104px; }
  [data-content-role="costs"], #hanh-trinh-7-tuan .section-inner > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 768px) {
  #cam-nhan-hoc-vien .testimonial-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 100%; }
  #cam-nhan-hoc-vien .testimonial-card { min-height: 340px; padding: 24px; }
}
@media (max-width: 767px) {
  :root { --title-hero: clamp(36px, 10.5vw, 45px); --title-section: clamp(29px, 8vw, 34px); --title-subsection: clamp(22px, 6.2vw, 25px); --title-card: 18px; }
  body { font-size: clamp(16px, 4.2vw, 17px); }
  .site-header { min-height: 64px; }
  .header-inner { width: calc(100% - 36px); max-width: calc(100% - 36px); min-height: 63px; }
  .site-header img { width: 138px; }
  .menu-toggle { position: fixed; top: 10px; right: 18px; z-index: 82; display: block; flex: 0 0 44px; }
  .primary-navigation { position: absolute; top: 64px; left: -18px; right: -18px; display: grid; gap: 0; padding: 10px 18px 20px; border-bottom: 0; background: rgba(5,5,5,.97); backdrop-filter: blur(16px); }
  .primary-navigation[hidden] { display: none; }
  .nav-link, .nav-cta { min-height: 52px; padding: 14px 0; border-top: 0; }
  .nav-cta { justify-content: center; margin-top: 10px; padding-inline: 18px; border: 1px solid var(--ink); }
  .sales-section { padding: 72px 18px; }
  .section-inner > * { max-width: 100%; }
  .hero-title, .section-title { overflow-wrap: anywhere; }
  .registration-cta { display: flex; width: 100%; min-height: 52px; }
  [data-content-role="old-ai"], [data-content-role="new-ai"], [data-content-role="ai-strengths"], [data-content-role="human-strengths"], [data-content-role="positive-fit"], [data-content-role="negative-fit"], [data-proof-placeholder], [data-conversion-step="schedule"], [data-conversion-step="investment"] { display: grid; width: 100%; margin: 28px 0 0; padding: 24px; }
  [data-content-role="pain"], [data-content-role="mindsets"], [data-content-role="tool-roles"], [data-content-role="entitlements"], [data-content-role="costs"], [data-content-role="mechanism"], [data-content-role="applied-method"], [data-content-role="curriculum"], [data-content-role="authority"], #hanh-trinh-7-tuan .section-inner > ol, [data-conversion-step="faq"] { grid-template-columns: minmax(0, 1fr); }
  [data-conversion-step="faq"] { gap: 24px; }
  [data-conversion-step="faq"] .subsection-title { grid-row: auto; }
  [data-conversion-step] { margin-top: 56px; }
  [data-content-role="form"] { padding: 24px 18px; }
  .price { overflow-wrap: normal; word-break: keep-all; font-size: clamp(40px, 12vw, 50px); }
}

/* Policy pages */
.policy-page { min-height: 100%; background: #f5f5f5; color: #111; font-family: Roboto, Arial, sans-serif; }
.policy-page *, .policy-page *::before, .policy-page *::after { box-sizing: border-box; }
.policy-skip { position: fixed; top: 10px; left: 10px; z-index: 100; padding: 10px 14px; background: #fff; color: #111; transform: translateY(-160%); }
.policy-skip:focus { transform: none; }
.policy-header, .policy-footer { background: #080808; color: #fff; }
.policy-header-inner, .policy-main, .policy-footer-inner { width: min(calc(100% - 40px), 920px); margin-inline: auto; }
.policy-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 76px; }
.policy-brand { color: #fff; font-size: 1.05rem; font-weight: 800; letter-spacing: .06em; text-decoration: none; }
.policy-home { color: #fff; text-underline-offset: 4px; }
.policy-main { padding-block: 30px 72px; }
.policy-breadcrumb { margin: 0 0 42px; color: #555; font-size: .92rem; }
.policy-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.policy-breadcrumb li + li::before { content: "/"; margin-right: 8px; color: #888; }
.policy-breadcrumb a, .policy-content a, .policy-footer a { color: inherit; text-underline-offset: 4px; }
.policy-article { background: #fff; border: 1px solid #d7d7d7; padding: clamp(24px, 5vw, 60px); }
.policy-kicker { margin: 0 0 12px; color: #666; font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.policy-article h1 { max-width: 760px; margin: 0; color: #080808; font-size: clamp(2rem, 6vw, 4rem); line-height: 1.02; letter-spacing: -.035em; }
.policy-summary { max-width: 720px; margin: 24px 0 0; color: #444; font-size: 1.1rem; line-height: 1.65; }
.policy-meta { margin: 18px 0 0; color: #666; font-size: .9rem; }
.policy-meta strong { color: inherit; }
.policy-content { margin-top: 44px; }
.policy-content section { padding-block: 28px; border-top: 1px solid #dedede; }
.policy-content h2 { margin: 0 0 14px; color: #111; font-size: clamp(1.25rem, 3vw, 1.65rem); }
.policy-content h3 { margin: 24px 0 8px; font-size: 1.05rem; }
.policy-content p, .policy-content li { color: #333; line-height: 1.72; }
.policy-content ul, .policy-content ol { padding-left: 1.25rem; }
.policy-content li + li { margin-top: 8px; }
.policy-notice { margin: 26px 0; padding: 24px; border: 2px solid #111; background: #f0f0f0; color: #111; font-size: 1.08rem; font-weight: 700; line-height: 1.65; }
.policy-related { display: flex; flex-wrap: wrap; gap: 10px 18px; padding: 0; list-style: none; }
.policy-footer-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; padding-block: 44px; }
.policy-footer address { color: #c9c9c9; font-style: normal; line-height: 1.7; }
.policy-footer nav { display: grid; align-content: start; gap: 10px; }
.policy-footer strong { display: block; margin-bottom: 10px; }
.policy-page a:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.policy-main a:focus-visible { outline-color: #111; }
@media (max-width: 640px) {
  .policy-header-inner { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 18px; }
  .policy-main { padding-block: 24px 48px; }
  .policy-breadcrumb { margin-bottom: 28px; }
  .policy-footer-inner { grid-template-columns: 1fr; }
}

/* Feedback pass — typography, proof gallery and tighter editorial rhythm */
.hero-lead { max-width: 760px; font-size: 1.08em; }
.hero-schedule { margin-top: 32px; }
.hero-schedule p { margin: 6px 0; }
.hero-schedule strong { font-weight: 700; }

#van-de [data-content-role="pain"] { gap: 0 48px; }
#van-de [data-content-role="pain"] li { border-top-color: rgba(255,255,255,.16); }
#van-de [data-content-role="pain"] li:last-child {
  grid-column: 1 / -1;
  margin-top: 24px;
  padding: 28px 32px;
  border: 1px solid #777;
  background: rgba(13,13,13,.9);
  color: var(--ink);
  font-size: 1.2em;
  font-weight: 700;
}

#hanh-trinh-7-tuan .section-inner > ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#lo-trinh [data-content-role="curriculum"] { max-width: 900px; }

.activity-section { overflow: hidden; background: #050505; }
.activity-section .section-inner { max-width: 1440px; }
.activity-section .section-title { max-width: 900px; }
.activity-gallery {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 220px;
  gap: 12px;
  max-width: 100%;
  margin-top: 56px;
}
.activity-gallery figure { overflow: hidden; margin: 0; background: #111; }
.activity-gallery figure:nth-child(1) { grid-column: span 7; grid-row: span 2; }
.activity-gallery figure:nth-child(2) { grid-column: span 5; }
.activity-gallery figure:nth-child(3) { grid-column: span 5; }
.activity-gallery figure:nth-child(4),
.activity-gallery figure:nth-child(5),
.activity-gallery figure:nth-child(6) { grid-column: span 4; }
.activity-gallery img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(100%); transition: transform .6s ease, filter .35s ease; }
.activity-gallery figure:hover img { transform: scale(1.025); filter: grayscale(0%); }

#giai-dap-ban-khoan .section-title { max-width: 900px; }
#giai-dap-ban-khoan .objection-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1080px; margin-top: 40px; }
#giai-dap-ban-khoan .objection-grid article { display: grid; align-content: start; gap: 14px; padding: 24px; }
#giai-dap-ban-khoan .objection-grid .subsection-title { font-size: 20px; line-height: 1.25; letter-spacing: -.015em; }
#giai-dap-ban-khoan .objection-grid article p { margin: 0; }

@media (max-width: 1024px) {
  #giai-dap-ban-khoan .objection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .header-inner { width: calc(100% - 36px); max-width: calc(100% - 36px); }
  #gioi-thieu .section-inner { min-width: 0; }
  #gioi-thieu .hero-title, #gioi-thieu .hero-content, #gioi-thieu .hero-lead { min-width: 0; width: 100%; max-width: 100%; }
  .hero-title, .section-title { overflow-wrap: normal; word-break: normal; }
  #van-de [data-content-role="pain"] { gap: 0; }
  #van-de [data-content-role="pain"] li:last-child { grid-column: auto; padding: 22px; }
  #hanh-trinh-7-tuan .section-inner > ol { grid-template-columns: minmax(0, 1fr); }
  .activity-gallery { grid-template-columns: 1fr; grid-auto-rows: 260px; gap: 10px; margin-top: 36px; }
  .activity-gallery figure:nth-child(n) { grid-column: auto; grid-row: auto; }
  .activity-gallery figure:first-child { min-height: 360px; }
  #giai-dap-ban-khoan .objection-grid { grid-template-columns: minmax(0, 1fr); margin-top: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .site-header, .menu-toggle span { transition: none; }
}

/* Premium motion layer — monochrome only */
.scroll-progress { position: fixed; inset: 0 0 auto; z-index: 90; height: 2px; background: #343434; pointer-events: none; }
.scroll-progress__bar { display: block; width: 100%; height: 100%; background: #f7f7f7; transform: scaleX(0); transform-origin: left center; will-change: transform; }
.sales-section { position: relative; min-height: 70vh; display: grid; align-items: center; }
.sales-section:first-child { min-height: calc(100svh - 76px); }
.sales-section.is-current { border-bottom: 0; }
.section-inner { position: relative; }
.reveal-item { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); transition-delay: var(--reveal-delay, 0ms); }
.is-visible .reveal-item { opacity: 1; transform: none; }
.button { transition: background-color .25s ease, color .25s ease, transform .25s ease; }
.button:hover { transform: translateY(-3px); }
[data-content-item], .testimonial-card, .objection-grid article, details { transition: border-color .25s ease, background-color .25s ease, transform .25s ease; }
[data-content-item]:hover, .testimonial-card:hover, .objection-grid article:hover { border-color: #777; transform: translateY(-4px); }

#gioi-thieu .section-inner { display: grid; gap: 0; align-content: center; width: min(calc(100% - 96px), 1440px); margin-left: max(48px, calc((100vw - 1600px) / 2)); margin-right: auto; }
#gioi-thieu .hero-title { font-size: var(--title-hero); }
.hero-title-line { display: block; white-space: nowrap; }
.hero-content { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(270px, .75fr); gap: 72px; align-items: start; margin-top: 54px; }
.hero-content > * { margin: 0; }
.hero-lead { max-width: 720px; }
.hero-schedule { display: grid; gap: 10px; padding-top: 2px; }
.hero-schedule p { margin: 0; }
.hero-schedule .button { justify-self: start; margin-top: 18px; }
#gioi-thieu { isolation: isolate; overflow: hidden; background: #020202; }
#gioi-thieu::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: none; }
#gioi-thieu::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, #020202 0%, rgba(2,2,2,.98) 27%, rgba(2,2,2,.78) 52%, rgba(2,2,2,.18) 100%); }
#gioi-thieu .hero-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
#gioi-thieu .hero-background { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; opacity: 1; filter: contrast(1.12) brightness(1.08); transform: translateX(8%); animation: heroFieldDrift 18s ease-in-out infinite alternate; }
#gioi-thieu .section-inner { z-index: 2; }
#gioi-thieu .hero-title { max-width: 1000px; }
@keyframes heroFieldDrift { from { transform: translateX(8%) scale(1); } to { transform: translateX(5.5%) scale(1.025); } }
@keyframes heroNodePulse { 0%, 100% { opacity: .45; transform: scale(1); } 50% { opacity: .9; transform: scale(1.08); } }
#cach-tiep-can .section-inner, #ai-va-con-nguoi .section-inner, #doi-tuong-phu-hop .section-inner { max-width: var(--content-width); }
#doi-tuong-phu-hop .section-inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
#doi-tuong-phu-hop .section-title { grid-column: 1 / -1; }
#doi-tuong-phu-hop [data-content-role="positive-fit"],
#doi-tuong-phu-hop [data-content-role="negative-fit"] { display: grid; width: auto; max-width: none; margin: 24px 0 0; padding: 32px; }
#cach-tiep-can { isolation: isolate; overflow: hidden; }
#cach-tiep-can::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(90deg, rgba(5,5,5,.98) 0%, rgba(5,5,5,.88) 48%, rgba(5,5,5,.28) 100%); }
#cach-tiep-can .section-02-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#cach-tiep-can .section-02-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center center; opacity: .68; }
#cach-tiep-can .section-inner { z-index: 1; }
#van-de { isolation: isolate; overflow: hidden; background: #050505; }
#van-de::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: #050505; }
#van-de .section-03-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#van-de .section-03-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: right center; opacity: 0; }
#van-de .section-inner { z-index: 1; }
#van-de [data-content-role="pain"] li { min-height: 86px; display: flex; align-items: center; font-size: 20px; }
#chi-phi-an { isolation: isolate; overflow: hidden; }
#chi-phi-an::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.84) 48%, rgba(5,5,5,.28) 100%); }
#chi-phi-an .section-04-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#chi-phi-an .section-04-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center bottom; opacity: .7; }
#chi-phi-an .section-inner { z-index: 1; }
#chi-phi-an [data-content-item] { min-height: 180px; }
#he-thong-ai { isolation: isolate; overflow: hidden; }
#he-thong-ai::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(5,5,5,.28) 0%, rgba(5,5,5,.68) 40%, rgba(5,5,5,.97) 68%, rgba(5,5,5,.98) 100%); }
#he-thong-ai .section-05-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#he-thong-ai .section-05-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center top; opacity: .72; }
#he-thong-ai .section-inner { z-index: 1; }
#he-thong-ai [data-content-role="mechanism"] { counter-reset: mechanism; }
#he-thong-ai [data-content-item] { counter-increment: mechanism; min-height: 150px; }
#ai-va-con-nguoi { isolation: isolate; overflow: hidden; }
#ai-va-con-nguoi::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(ellipse at center, rgba(5,5,5,.94) 0%, rgba(5,5,5,.82) 52%, rgba(5,5,5,.38) 100%); }
#ai-va-con-nguoi .section-06-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#ai-va-con-nguoi .section-06-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; opacity: .68; }
#ai-va-con-nguoi .section-inner { z-index: 1; }
.section-background-media, .section-ai-background-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.section-background, .section-ai-background { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.sales-section { position: relative; isolation: isolate; overflow: hidden; }
.sales-section > .section-inner { position: relative; z-index: 1; }
#hanh-trinh-7-tuan, #tu-duy-he-thong, #lo-trinh { isolation: isolate; overflow: hidden; }
#hanh-trinh-7-tuan::after, #tu-duy-he-thong::after, #lo-trinh::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; }
#hanh-trinh-7-tuan .section-inner, #tu-duy-he-thong .section-inner, #lo-trinh .section-inner { z-index: 1; }
#hanh-trinh-7-tuan::after { background: linear-gradient(90deg, rgba(5,5,5,.78), rgba(5,5,5,.9) 42%, rgba(5,5,5,.46)); }
#hanh-trinh-7-tuan .section-ai-background { object-position: left center; opacity: .58; }
#tu-duy-he-thong::after { background: linear-gradient(90deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.87) 55%, rgba(5,5,5,.3) 100%); }
#tu-duy-he-thong .section-ai-background { object-position: right top; opacity: .65; }
#lo-trinh::after { background: linear-gradient(90deg, rgba(5,5,5,.92) 0%, rgba(5,5,5,.78) 52%, rgba(5,5,5,.44) 100%); }
#lo-trinh .section-ai-background { object-position: center; opacity: .58; }
#quyen-loi, #doi-tuong-phu-hop, #phuong-phap, #nguoi-dan-dat { isolation: isolate; overflow: hidden; }
#quyen-loi::after, #doi-tuong-phu-hop::after, #phuong-phap::after, #nguoi-dan-dat::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; }
#quyen-loi .section-inner, #doi-tuong-phu-hop .section-inner, #phuong-phap .section-inner, #nguoi-dan-dat .section-inner { z-index: 1; }
#quyen-loi::after { background: linear-gradient(180deg, rgba(5,5,5,.38), rgba(5,5,5,.93) 58%); }
#quyen-loi .section-ai-background { object-position: center top; opacity: .58; }
#doi-tuong-phu-hop::after { background: rgba(5,5,5,.7); }
#doi-tuong-phu-hop .section-ai-background { object-position: center; opacity: .54; }
#phuong-phap::after { background: linear-gradient(180deg, rgba(5,5,5,.34), rgba(5,5,5,.95) 62%); }
#phuong-phap .section-ai-background { object-position: left top; opacity: .62; }
#nguoi-dan-dat::after { background: linear-gradient(90deg, rgba(5,5,5,.98) 0%, rgba(5,5,5,.9) 55%, rgba(5,5,5,.3)); }
#nguoi-dan-dat .section-ai-background { object-position: right center; opacity: .68; }
#cam-nhan-hoc-vien::after, #hoc-phi::after, #dang-ky::after, #giai-dap-ban-khoan::after, #cau-hoi-thuong-gap::after, #bat-dau::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; }
#cam-nhan-hoc-vien::after { background: linear-gradient(180deg, rgba(5,5,5,.9), rgba(5,5,5,.72) 45%, rgba(5,5,5,.96)); }
#cam-nhan-hoc-vien .section-background { object-position: center; opacity: .48; }
#hoc-phi::after { background: linear-gradient(90deg, rgba(5,5,5,.97), rgba(5,5,5,.83) 58%, rgba(5,5,5,.4)); }
#hoc-phi .section-background { object-position: right center; opacity: .58; }
#dang-ky::after { background: linear-gradient(90deg, rgba(5,5,5,.98), rgba(5,5,5,.78) 60%, rgba(5,5,5,.28)); }
#dang-ky .section-background { object-position: right center; opacity: .62; }
#giai-dap-ban-khoan::after { background: rgba(5,5,5,.76); }
#giai-dap-ban-khoan .section-background { object-position: center; opacity: .5; }
#cau-hoi-thuong-gap::after { background: linear-gradient(180deg, rgba(5,5,5,.93), rgba(5,5,5,.7) 55%, rgba(5,5,5,.92)); }
#cau-hoi-thuong-gap .section-background { object-position: center bottom; opacity: .5; }
#bat-dau::after { background: linear-gradient(90deg, rgba(5,5,5,.97), rgba(5,5,5,.8) 55%, rgba(5,5,5,.25)); }
#bat-dau .section-background { object-position: right center; opacity: .66; }
#hanh-trinh-7-tuan li { min-height: 150px; font-size: 19px; }
#hanh-trinh-7-tuan li::marker { content: attr(data-number) "  "; color: #b7b7b7; font-weight: 700; }
#tu-duy-he-thong [data-content-item] { min-height: 120px; display: flex; align-items: center; }
#lo-trinh [data-content-role="curriculum"] { grid-template-columns: 1fr; }
#lo-trinh [data-content-item] { padding-block: 34px; font-size: 20px; }
.experience-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 1px; background: var(--line); border: 1px solid var(--line); }
.experience-grid article { padding: 28px; background: var(--canvas); }
.founder-role { color: var(--ink); font-size: 22px; font-weight: 700; }
.founder-copy { display: grid; grid-template-columns: .8fr 1.2fr; gap: 48px; margin-top: 48px; }
.founder-copy blockquote { margin: 0; font-size: 28px; }
.testimonial-grid, .objection-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 56px; border: 1px solid var(--line); background: var(--line); }
.testimonial-card { min-height: 280px; }
.testimonial-card, .objection-grid article { margin: 0; padding: 32px; border: 0; background: var(--canvas); }
.testimonial-card { display: flex; flex-direction: column; justify-content: space-between; }
.testimonial-card footer { display: grid; gap: 4px; margin-top: 28px; color: var(--muted); font-size: 14px; }
.price-label { margin-top: 48px; color: var(--ink); font-size: 14px; font-weight: 700; letter-spacing: .14em; }
#hoc-phi [data-content-role="entitlements"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#dang-ky .section-inner { border: 0; padding: 0; }
.guarantee-registration-layout { display: grid; grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr); gap: 64px; align-items: start; }
.guarantee-copy { position: sticky; top: 116px; padding: 44px 0; border-block: 1px solid #777; }
.guarantee-copy .section-title { font-size: var(--title-section); }
.guarantee-copy .guarantee { margin-block: 38px 24px; padding-block: 24px; font-size: 54px; }
.guarantee .tuition-phrase { display: inline-block; white-space: nowrap; }
.guarantee-terms { display: grid; gap: 4px; margin-top: 24px; }
.guarantee-terms strong { font-size: 20px; }
.guarantee-terms span { color: var(--muted); font-size: 14px; }
.guarantee-integrated { margin: 34px 0 0; padding: 0; border: 0; color: #d7d7d7; font-size: clamp(17px, 1.35vw, 20px); line-height: 1.55; letter-spacing: -.01em; }
.guarantee-integrated strong { color: #fff; font-weight: 800; }
.registration-panel { margin: 0; padding: 44px; border: 1px solid #777; background: var(--surface); }
.registration-panel > .eyebrow { margin-bottom: 12px; }
.registration-panel form { margin-top: 26px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
.form-grid label { display: grid; gap: 7px; margin-top: 16px; color: var(--ink); font-weight: 500; }
.form-grid .form-span { grid-column: 1 / -1; }
.form-grid .form-email { grid-column: 1; grid-row: 2; }
.form-grid .form-role { grid-column: 2; grid-row: 2; }
.form-grid .form-company { grid-row: 3; }
.registration-panel .form-submit { width: 100%; }
#cau-hoi-thuong-gap details { max-width: 900px; }
#cau-hoi-thuong-gap details:first-of-type { border-top: 0; }
#cau-hoi-thuong-gap summary { padding-block: 22px; font-size: 20px; }
.final-conversion { text-align: center; }
.final-conversion > * { margin-inline: auto; }
.final-lead { max-width: 760px; font-size: 22px; }
.final-process { display: grid; grid-template-columns: repeat(6, 1fr); width: 100%; max-width: 1080px; margin-top: 52px; border: 1px solid var(--line); }
.final-process span { padding: 18px 10px; border-right: 1px solid var(--line); color: var(--ink); font-size: 13px; font-weight: 700; text-transform: uppercase; }
.final-process span:last-child { border-right: 0; }
.product-line { display: grid; gap: 6px; margin-top: 42px; }
.final-facts { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; max-width: 900px; margin-top: 42px; border-block: 1px solid var(--line); }
.final-facts div { display: grid; gap: 5px; padding: 22px; border-right: 1px solid var(--line); }
.final-facts div:last-child { border-right: 0; }
.final-facts span { color: var(--muted); font-size: 13px; text-transform: uppercase; }
#registration-form-start { margin-top: 80px; text-align: left; }
details[open] { border-color: #777; }

@media (max-width: 1024px) {
  #gioi-thieu .section-inner { grid-template-columns: 1fr; }
  .hero-content { grid-template-columns: 1fr; gap: 28px; }
  .founder-copy { grid-template-columns: 1fr; }
  .guarantee-registration-layout { grid-template-columns: 1fr; gap: 48px; }
  .guarantee-copy { position: static; }
  .final-process { grid-template-columns: repeat(3, 1fr); }
  .final-process span:nth-child(3) { border-right: 0; }
}
@media (max-width: 767px) {
  .sales-section { min-height: auto; }
  #cach-tiep-can::after { background: rgba(5,5,5,.62); }
  #cach-tiep-can .section-02-background { object-position: center center; opacity: .38; }
  #van-de::after { background: #050505; }
  #van-de .section-03-background { object-position: right bottom; opacity: 0; }
  #chi-phi-an::after { background: linear-gradient(180deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.84) 56%, rgba(5,5,5,.38) 100%); }
  #chi-phi-an .section-04-background { object-position: left bottom; opacity: .58; }
  #he-thong-ai::after { background: linear-gradient(180deg, rgba(5,5,5,.46) 0%, rgba(5,5,5,.76) 34%, rgba(5,5,5,.98) 60%, rgba(5,5,5,.98) 100%); }
  #he-thong-ai .section-05-background { object-position: right top; opacity: .6; }
  #ai-va-con-nguoi::after { background: linear-gradient(180deg, rgba(5,5,5,.52) 0%, rgba(5,5,5,.92) 28%, rgba(5,5,5,.94) 72%, rgba(5,5,5,.48) 100%); }
  #ai-va-con-nguoi .section-06-background { object-position: center; opacity: .62; }
  #hanh-trinh-7-tuan .section-ai-background { object-position: right center; opacity: .46; }
  #tu-duy-he-thong .section-ai-background { object-position: right center; opacity: .52; }
  #lo-trinh .section-ai-background { object-position: left center; opacity: .48; }
  #quyen-loi .section-ai-background { object-position: center top; opacity: .45; }
  #doi-tuong-phu-hop .section-ai-background { object-position: center; opacity: .4; }
  #phuong-phap .section-ai-background { object-position: center top; opacity: .48; }
  #nguoi-dan-dat .section-ai-background { object-position: left bottom; opacity: .56; }
  #cam-nhan-hoc-vien .section-background { object-position: center bottom; opacity: .36; }
  #hoc-phi .section-background { object-position: center bottom; opacity: .44; }
  #dang-ky .section-background { object-position: center bottom; opacity: .5; }
  #giai-dap-ban-khoan .section-background { object-position: center; opacity: .38; }
  #cau-hoi-thuong-gap .section-background { object-position: center bottom; opacity: .4; }
  #bat-dau .section-background { object-position: center bottom; opacity: .5; }
  #gioi-thieu::after { background: linear-gradient(180deg, #020202 0%, rgba(2,2,2,.97) 34%, rgba(2,2,2,.72) 62%, rgba(2,2,2,.18) 100%); }
  #gioi-thieu .hero-background { object-position: center; opacity: .82; filter: contrast(1.16) brightness(1.08); transform: none; }
  #gioi-thieu .section-inner { width: 100%; margin-inline: auto; }
  .hero-title-line { display: inline; white-space: normal; }
  .hero-title-line:not(:last-child)::after { content: " "; }
  .hero-content { margin-top: 36px; }
  .reveal-item { transform: translateY(18px); }
  .experience-grid, .testimonial-grid, .objection-grid, #hoc-phi [data-content-role="entitlements"] { grid-template-columns: 1fr !important; }
  #cam-nhan-hoc-vien .testimonial-grid { grid-template-columns: minmax(0, 1fr); }
  #doi-tuong-phu-hop .section-inner { grid-template-columns: minmax(0, 1fr); gap: 0; }
  #doi-tuong-phu-hop .section-title { grid-column: auto; }
  .testimonial-card, .objection-grid article { min-height: auto; padding: 24px; }
  .final-process { grid-template-columns: repeat(2, 1fr); }
  .final-process span:nth-child(3) { border-right: 1px solid var(--line); }
  .final-process span:nth-child(even) { border-right: 0; }
  .final-facts { grid-template-columns: 1fr; }
  .final-facts div { border-right: 0; border-bottom: 1px solid var(--line); }
  .final-facts div:last-child { border-bottom: 0; }
  .registration-panel { padding: 28px 20px; }
  .form-grid { grid-template-columns: 1fr; gap: 0; }
  .form-grid .form-span { grid-column: auto; }
  .form-grid .form-company,
  .form-grid .form-role,
  .form-grid .form-email { grid-column: auto; grid-row: auto; }
  .guarantee-copy .guarantee { font-size: clamp(30px, 9vw, 38px); }
  .guarantee-integrated { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  #gioi-thieu .hero-background, #gioi-thieu::before { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal-item { opacity: 1; transform: none; }
  .button:hover, [data-content-item]:hover, .testimonial-card:hover, .objection-grid article:hover { transform: none; }
}

/* Compact desktop density for information-heavy grids */
@media (min-width: 1025px) {
  #chi-phi-an [data-content-item] { min-height: auto; padding: 20px; }
  #he-thong-ai [data-content-item] { min-height: auto; padding: 20px; }
  #hanh-trinh-7-tuan .section-inner > ol li { padding: 20px; }
  #hanh-trinh-7-tuan li { min-height: auto; }
}

/* Unified vertical rhythm: content determines height, not decorative empty space */
.sales-section:not(:first-child) { min-height: auto; padding-block: var(--section-space); }
:is(
  #van-de [data-content-item],
  #chi-phi-an [data-content-item],
  #he-thong-ai [data-content-item],
  #hanh-trinh-7-tuan li,
  #tu-duy-he-thong [data-content-item],
  #lo-trinh [data-content-item],
  .experience-grid article,
  .testimonial-card
) { min-height: auto; padding: var(--card-space); }
:is(
  [data-content-role="pain"],
  [data-content-role="mindsets"],
  [data-content-role="tool-roles"],
  [data-content-role="entitlements"],
  [data-content-role="costs"],
  [data-content-role="mechanism"],
  [data-content-role="applied-method"],
  [data-content-role="curriculum"],
  [data-content-role="authority"],
  #hanh-trinh-7-tuan .section-inner > ol,
  .testimonial-grid,
  .objection-grid
) { margin-top: var(--grid-space); }

@media (max-width: 1024px) {
  :root { --section-space: 80px; --grid-space: 28px; --card-space: 22px; }
}
@media (max-width: 767px) {
  :root { --section-space: 64px; --grid-space: 24px; --card-space: 20px; }
}

/* Connected desktop background sequence: Sections 01–03 */
@media (min-width: 768px) {
  #gioi-thieu {
    background-color: #050505;
    background-image: url("assets/backgrounds/section-01-desktop-v1.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
  }
  #gioi-thieu::before { background: none; animation: none; }
  #gioi-thieu::after { background: linear-gradient(90deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.84) 38%, rgba(5,5,5,.3) 66%, rgba(5,5,5,.05) 100%); }
  #cach-tiep-can {
    background-color: #050505;
    background-image: url("assets/backgrounds/section-02-desktop-v5.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
  }
  #cach-tiep-can::after { background: linear-gradient(90deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.84) 38%, rgba(5,5,5,.3) 66%, rgba(5,5,5,.05) 100%); }
  #van-de {
    background-color: #050505;
    background-image: url("assets/backgrounds/section-03-desktop-v5.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
  }
  #van-de::after { background: linear-gradient(90deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.84) 38%, rgba(5,5,5,.3) 66%, rgba(5,5,5,.05) 100%); }
  #gioi-thieu, #cach-tiep-can { border-bottom-color: transparent; }
}

/* Approved direction: selected sections use a plain luxury-black field with no mockup. */
#he-thong-ai,
#ai-va-con-nguoi,
#quyen-loi,
#doi-tuong-phu-hop,
#phuong-phap,
#nguoi-dan-dat,
#cam-nhan-hoc-vien,
#hoc-phi,
#dang-ky,
#giai-dap-ban-khoan,
#cau-hoi-thuong-gap,
#bat-dau { background: #050505; }

#he-thong-ai::after,
#ai-va-con-nguoi::after,
#quyen-loi::after,
#doi-tuong-phu-hop::after,
#phuong-phap::after,
#nguoi-dan-dat::after,
#cam-nhan-hoc-vien::after,
#hoc-phi::after,
#dang-ky::after,
#giai-dap-ban-khoan::after,
#cau-hoi-thuong-gap::after,
#bat-dau::after { background: #050505; }

#he-thong-ai .section-05-background,
#ai-va-con-nguoi .section-06-background,
#quyen-loi .section-ai-background,
#doi-tuong-phu-hop .section-ai-background,
#phuong-phap .section-ai-background,
#nguoi-dan-dat .section-ai-background,
#cam-nhan-hoc-vien .section-background,
#hoc-phi .section-background,
#dang-ky .section-background,
#giai-dap-ban-khoan .section-background,
#cau-hoi-thuong-gap .section-background,
#bat-dau .section-background { opacity: 0 !important; }

/* Minimal alternating light sequence: Sections 02–05 */
#cach-tiep-can,
#van-de,
#chi-phi-an,
#he-thong-ai {
  background-color: #050505;
  background-repeat: no-repeat;
  background-size: cover;
}

#cach-tiep-can { background-image: url("assets/backgrounds/section-02-desktop-v5.png"); background-position: right center; }
#van-de { background-image: url("assets/backgrounds/section-03-desktop-v5.png"); background-position: left center; }
#chi-phi-an { background-image: url("assets/backgrounds/section-04-desktop-v5.png"); background-position: right center; }
#he-thong-ai { background-image: url("assets/backgrounds/section-05-desktop-v5.png"); background-position: left center; }

#cach-tiep-can::after,
#chi-phi-an::after {
  background: linear-gradient(90deg, rgba(5,5,5,.94) 0%, rgba(5,5,5,.82) 48%, rgba(5,5,5,.10) 100%);
}

#van-de::after,
#he-thong-ai::after {
  background: linear-gradient(90deg, rgba(5,5,5,.78) 0%, rgba(5,5,5,.84) 38%, rgba(5,5,5,.92) 100%);
}

#cach-tiep-can .section-02-background,
#van-de .section-03-background,
#chi-phi-an .section-04-background,
#he-thong-ai .section-05-background { opacity: 0 !important; }

#cach-tiep-can,
#van-de,
#chi-phi-an { border-bottom-color: transparent; }

@media (max-width: 767px) {
  #cach-tiep-can,
  #chi-phi-an { background-size: auto 100%; background-position: 78% center; }

  #van-de,
  #he-thong-ai { background-size: auto 100%; background-position: 22% center; }

  #cach-tiep-can::after,
  #van-de::after,
  #chi-phi-an::after,
  #he-thong-ai::after { background: rgba(5,5,5,.78); }
}

/* Continuous architectural journey: Sections 06–10 */
#ai-va-con-nguoi,
#hanh-trinh-7-tuan,
#tu-duy-he-thong,
#lo-trinh {
  background-color: #050505;
  background-repeat: no-repeat;
  background-size: cover;
}

#ai-va-con-nguoi { background-image: url("assets/backgrounds/section-06-desktop-v5.png"); background-position: right center; }
#hanh-trinh-7-tuan { background-image: url("assets/backgrounds/section-07-desktop-v5.png"); background-position: left center; }
#tu-duy-he-thong { background-image: url("assets/backgrounds/section-08-desktop-v5.png"); background-position: right center; }
#lo-trinh { background-image: url("assets/backgrounds/section-09-desktop-v5.png"); background-position: left center; }

#ai-va-con-nguoi::after,
#tu-duy-he-thong::after {
  background: linear-gradient(90deg, rgba(5,5,5,.94) 0%, rgba(5,5,5,.84) 48%, rgba(5,5,5,.34) 100%);
}

#hanh-trinh-7-tuan::after,
#lo-trinh::after {
  background: linear-gradient(90deg, rgba(5,5,5,.72) 0%, rgba(5,5,5,.86) 44%, rgba(5,5,5,.94) 100%);
}

#ai-va-con-nguoi,
#hanh-trinh-7-tuan,
#tu-duy-he-thong,
#lo-trinh { border-bottom-color: transparent; }

@media (max-width: 767px) {
  #ai-va-con-nguoi,
  #tu-duy-he-thong { background-size: auto 100%; background-position: 78% center; }

  #hanh-trinh-7-tuan,
  #lo-trinh { background-size: auto 100%; background-position: 22% center; }

  #ai-va-con-nguoi::after,
  #hanh-trinh-7-tuan::after,
  #tu-duy-he-thong::after,
  #lo-trinh::after { background: rgba(5,5,5,.80); }
}

/* Continuous architectural journey: Sections 11–20 */
#quyen-loi,
#doi-tuong-phu-hop,
#phuong-phap,
#nguoi-dan-dat,
#cam-nhan-hoc-vien,
#hoc-phi,
#dang-ky,
#giai-dap-ban-khoan,
#cau-hoi-thuong-gap,
#bat-dau {
  background-color: #050505;
  background-repeat: no-repeat;
  background-size: cover;
}

#quyen-loi { background-image: url("assets/backgrounds/section-11-desktop-v5.png"); background-position: left center; }
#doi-tuong-phu-hop { background-image: url("assets/backgrounds/section-12-desktop-v5.png"); background-position: right center; }
#phuong-phap { background-image: url("assets/backgrounds/section-13-desktop-v5.png"); background-position: left center; }
#nguoi-dan-dat { background-image: url("assets/backgrounds/section-14-coaching-leader-v2.png"); background-position: center center; }
#cam-nhan-hoc-vien { background-image: url("assets/backgrounds/section-15-desktop-v5.png"); background-position: left center; }
#hoc-phi { background-image: url("assets/backgrounds/section-16-desktop-v5.png"); background-position: right center; }
#dang-ky { background-image: url("assets/backgrounds/section-17-desktop-v5.png"); background-position: left center; }
#giai-dap-ban-khoan { background-image: url("assets/backgrounds/section-18-desktop-v5.png"); background-position: right center; }
#cau-hoi-thuong-gap { background-image: url("assets/backgrounds/section-19-desktop-v5.png"); background-position: left center; }
#bat-dau { background-image: url("assets/backgrounds/section-20-desktop-v5.png"); background-position: right center; }

#quyen-loi::after,
#phuong-phap::after,
#cam-nhan-hoc-vien::after,
#cau-hoi-thuong-gap::after {
  background: linear-gradient(90deg, rgba(5,5,5,.72) 0%, rgba(5,5,5,.86) 44%, rgba(5,5,5,.94) 100%);
}

#doi-tuong-phu-hop::after,
#nguoi-dan-dat::after,
#hoc-phi::after,
#giai-dap-ban-khoan::after,
#bat-dau::after {
  background: linear-gradient(90deg, rgba(5,5,5,.94) 0%, rgba(5,5,5,.84) 48%, rgba(5,5,5,.34) 100%);
}

#dang-ky::after { background: rgba(5,5,5,.84); }

#quyen-loi,
#doi-tuong-phu-hop,
#phuong-phap,
#nguoi-dan-dat,
#cam-nhan-hoc-vien,
#hoc-phi,
#dang-ky,
#giai-dap-ban-khoan,
#cau-hoi-thuong-gap { border-bottom-color: transparent; }

@media (max-width: 767px) {
  #doi-tuong-phu-hop,
  #nguoi-dan-dat,
  #hoc-phi,
  #giai-dap-ban-khoan,
  #bat-dau { background-size: auto 100%; background-position: 78% center; }

  #quyen-loi,
  #phuong-phap,
  #cam-nhan-hoc-vien,
  #dang-ky,
  #cau-hoi-thuong-gap { background-size: auto 100%; background-position: 22% center; }

  #quyen-loi::after,
  #doi-tuong-phu-hop::after,
  #phuong-phap::after,
  #nguoi-dan-dat::after,
  #cam-nhan-hoc-vien::after,
  #hoc-phi::after,
  #dang-ky::after,
  #giai-dap-ban-khoan::after,
  #cau-hoi-thuong-gap::after,
  #bat-dau::after { background: rgba(5,5,5,.82); }
}

/* Exact visual corrections from annotated feedback */
.hero-primary-cta { justify-self: start; margin-top: 30px; }

/* Preserve the approved Section 02 composition independently of global type changes */
#cach-tiep-can .section-inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
  align-items: stretch;
}
#cach-tiep-can .section-title,
#cach-tiep-can [data-closing-statement] { grid-column: 1 / -1; }
#cach-tiep-can [data-content-role="old-ai"],
#cach-tiep-can [data-content-role="new-ai"] {
  display: grid;
  width: auto;
  margin: 48px 0 0;
  padding: 32px;
}
#cach-tiep-can [data-content-role="old-ai"] { margin-right: 0; }
#cach-tiep-can [data-closing-statement] { width: 100%; max-width: 1080px; padding-top: 0; border-top: 0; }

/* Screenshot feedback: restore deliberate grid rules and title rhythm. */
@media (min-width: 1025px) {
  #ai-va-con-nguoi .section-title { max-width: none; font-size: clamp(32px, 2.7vw, 42px); white-space: nowrap; }
  #van-de [data-content-role="pain"] li:last-child { border-top: 1px solid var(--line); }
  #hoc-phi [data-content-role="entitlements"] li:first-child { border-top: 1px solid var(--line); }
}

/* Preserve the approved Section 06 comparison composition */
#ai-va-con-nguoi .section-inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
  align-items: stretch;
}
#ai-va-con-nguoi .section-title,
#ai-va-con-nguoi [data-closing-statement] { grid-column: 1 / -1; }
#ai-va-con-nguoi [data-content-role="ai-strengths"],
#ai-va-con-nguoi [data-content-role="human-strengths"] {
  display: grid;
  width: auto;
  margin: 48px 0 0;
  padding: 32px;
}
#ai-va-con-nguoi [data-content-role="ai-strengths"] { margin-right: 0; }
#ai-va-con-nguoi [data-closing-statement] {
  width: 100%;
  max-width: 1080px;
  margin-top: 36px;
  padding-top: 0;
  border-top: 0;
}
#van-de [data-content-role="pain"] li:nth-child(2) { border-top: 0; }
#van-de [data-content-role="pain"] li:last-child { border-top: 1px solid #777; }
#ai-va-con-nguoi [data-closing-statement] { border-top: 0; padding-top: 0; }

#hanh-trinh-7-tuan { --journey-visible: 4; --journey-gap: 16px; }
#hanh-trinh-7-tuan .journey-controls { display: none; align-items: center; justify-content: space-between; width: 100%; max-width: 1080px; margin-top: 40px; }
#hanh-trinh-7-tuan.is-enhanced .journey-controls { display: flex; }
.journey-status { color: var(--muted); font-size: 15px; font-weight: 700; letter-spacing: .08em; }
.journey-actions { display: flex; gap: 8px; }
.journey-button { display: inline-grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1px solid #777; background: #050505; color: var(--ink); cursor: pointer; }
.journey-button:disabled { border-color: var(--line); color: #777; cursor: default; opacity: .55; }
.journey-viewport { position: relative; width: 100%; max-width: 1080px; margin-top: 26px; overflow-x: auto; overflow-y: hidden; container-type: inline-size; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scroll-padding-inline: 0; scrollbar-width: thin; scrollbar-color: #777 #0d0d0d; }
.journey-track { position: relative; z-index: 1; display: grid; grid-auto-flow: column; grid-auto-columns: calc((100cqi - (var(--journey-visible) - 1) * var(--journey-gap)) / var(--journey-visible)); gap: var(--journey-gap); width: max-content; margin: 0; padding: 0 0 20px; list-style: none; }
#hanh-trinh-7-tuan .journey-track li { display: grid; grid-template-rows: 40px auto; min-width: 0; min-height: 150px; padding: 0 18px 22px 0; border: 0; background: transparent; scroll-snap-align: start; }
.journey-number { position: relative; z-index: 2; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #777; border-radius: 50%; background: #050505; color: var(--ink); font-size: 14px; font-weight: 700; }
.journey-copy { align-self: start; padding-top: 22px; color: var(--ink); font-size: 18px; font-weight: 600; line-height: 1.4; }
.journey-connector { position: absolute; top: 19px; left: 20px; z-index: 0; width: var(--journey-track-width, 100%); height: 1px; background: #777; pointer-events: none; }
#hanh-trinh-7-tuan > .section-inner > p { margin-top: 32px; max-width: 900px; }

@media (max-width: 1199px) and (min-width: 768px) {
  #hanh-trinh-7-tuan { --journey-visible: 3; }
}

#tu-duy-he-thong [data-content-role="mindsets"] li:nth-child(1),
#tu-duy-he-thong [data-content-role="mindsets"] li:nth-child(2) { border-top: 1px solid var(--line); }
#tu-duy-he-thong [data-content-role="mindsets"] li:last-child {
  grid-column: 1 / -1;
  margin-top: 24px;
  padding: 28px 32px;
  border: 1px solid #777;
  background: rgba(13,13,13,.9);
  color: var(--ink);
  font-size: 1.2em;
  font-weight: 700;
}

#phuong-phap [data-content-role="authority"] { grid-template-columns: 1fr; }
#phuong-phap [data-content-role="authority"] li {
  display: grid;
  grid-template-columns: 64px 1fr;
  align-items: center;
  gap: 20px;
}
#phuong-phap .step-index {
  color: #777;
  font-weight: 700;
  letter-spacing: .08em;
}

#nguoi-dan-dat .section-inner { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: clamp(48px, 6vw, 88px); align-items: center; }
#nguoi-dan-dat .founder-portrait { position: relative; display: block; width: 100%; max-width: none; height: clamp(580px, 52vw, 700px); margin: 0; overflow: hidden; background: #050505; opacity: 1 !important; transform: none !important; }
#nguoi-dan-dat .founder-portrait::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,5,5,.08) 0%, rgba(5,5,5,.08) 54%, #050505 100%), linear-gradient(0deg, rgba(5,5,5,.38), transparent 38%); content: ""; pointer-events: none; }
#nguoi-dan-dat .founder-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 22% center; filter: brightness(.72) contrast(1.08); opacity: 1; }
#nguoi-dan-dat .founder-content { position: relative; width: 100%; max-width: 620px; padding: clamp(30px, 4vw, 54px); background: rgba(5,5,5,.97); box-shadow: -40px 0 70px #050505; }
#nguoi-dan-dat .founder-copy { display: grid; grid-template-columns: 1fr; gap: 26px; margin-top: 42px; }
#nguoi-dan-dat .founder-copy > * { margin: 0; }
#nguoi-dan-dat .founder-copy blockquote { padding: 24px 0 24px 28px; background: transparent; }

@media (max-width: 1024px) {
  #nguoi-dan-dat .section-inner { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 38px; }
  #nguoi-dan-dat .founder-portrait { height: 560px; }
}

.price-row { display: flex; align-items: flex-end; gap: 18px; margin-top: 38px; }
.price-row .price { margin: 0; }
#hoc-phi .price-row .price { display: inline-flex; align-items: baseline; padding: 16px 22px; background: var(--ink); color: var(--canvas); }
.price-row .price span { display: inline-block; margin-left: 8px; padding: 8px 12px; background: var(--ink); color: var(--canvas); font-size: .38em; line-height: 1; vertical-align: .28em; }
.price-row small { padding-bottom: 12px; color: var(--muted); }
.refund-promise { margin-top: 34px; padding-top: 24px; border-top: 1px solid #777; color: var(--ink); font-weight: 700; }
.guarantee-copy { border-block: 0; }
.guarantee-copy .guarantee { border-block: 0; padding-block: 0; line-height: 1.24; }

@media (max-width: 767px) {
  .hero-primary-cta { justify-self: stretch; width: 100%; }
  #cach-tiep-can .section-inner { grid-template-columns: 1fr; gap: 0; }
  #cach-tiep-can .section-title,
  #cach-tiep-can [data-closing-statement] { grid-column: auto; }
  #cach-tiep-can [data-content-role="old-ai"],
  #cach-tiep-can [data-content-role="new-ai"] { width: 100%; margin-top: 28px; padding: 24px; }
  #ai-va-con-nguoi .section-inner { grid-template-columns: 1fr; gap: 0; }
  #ai-va-con-nguoi .section-title,
  #ai-va-con-nguoi [data-closing-statement] { grid-column: auto; }
  #ai-va-con-nguoi [data-content-role="ai-strengths"],
  #ai-va-con-nguoi [data-content-role="human-strengths"] { width: 100%; margin-top: 28px; padding: 24px; }
  #hanh-trinh-7-tuan .journey-controls { display: none !important; }
  #hanh-trinh-7-tuan .journey-viewport { overflow: visible; container-type: normal; }
  #hanh-trinh-7-tuan .journey-track { display: grid; grid-auto-flow: row; grid-template-columns: 1fr; gap: 0; width: 100%; padding-bottom: 0; }
  #hanh-trinh-7-tuan .journey-track li { position: relative; grid-template-columns: 40px 1fr; grid-template-rows: auto; gap: 18px; min-height: 96px; padding: 0 0 28px; }
  #hanh-trinh-7-tuan .journey-track li:last-child { min-height: auto; padding-bottom: 0; }
  #hanh-trinh-7-tuan .journey-track li:not(:last-child)::after { content: ""; position: absolute; top: 40px; bottom: 0; left: 19px; width: 1px; background: #777; }
  #hanh-trinh-7-tuan .journey-copy { padding-top: 6px; }
  #hanh-trinh-7-tuan .journey-connector { display: none; }
  #tu-duy-he-thong [data-content-role="mindsets"] li:last-child { grid-column: auto; padding: 22px; }
  .price-row { align-items: flex-start; flex-direction: column; gap: 8px; }
  .price-row small { padding-bottom: 0; }
  #nguoi-dan-dat .section-inner { grid-template-columns: 1fr; gap: 40px; }
  #nguoi-dan-dat { background-position: 68% center; }
  #nguoi-dan-dat .section-inner > .eyebrow,
  #nguoi-dan-dat .section-inner > .section-title,
  #nguoi-dan-dat .section-inner > .founder-role,
  #nguoi-dan-dat .section-inner > .founder-copy { max-width: none; }
  #nguoi-dan-dat .section-inner > .eyebrow,
  #nguoi-dan-dat .section-inner > .section-title,
  #nguoi-dan-dat .section-inner > .founder-role,
  #nguoi-dan-dat .section-inner > .founder-copy,
  #nguoi-dan-dat .founder-portrait { grid-column: 1; }
  #nguoi-dan-dat .founder-portrait { grid-row: auto; height: 440px; margin: 0; }
  #nguoi-dan-dat .founder-portrait::after { background: linear-gradient(0deg, #050505 0%, transparent 34%); }
  #nguoi-dan-dat .founder-content { max-width: none; }
}


/* Semantic fragment navigation and customer-facing footer */
.site-footer { position: relative; overflow: hidden; background: #050505; color: var(--ink); }
.site-footer::before { position: absolute; inset: 0; background: radial-gradient(circle at 8% 0%, rgba(255,255,255,.08), transparent 32%); content: ""; pointer-events: none; }
.footer-inner { position: relative; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(220px, .85fr) minmax(220px, .8fr); gap: clamp(36px, 5vw, 80px); width: min(calc(100% - 48px), var(--content-width)); margin: 0 auto; padding: clamp(64px, 8vw, 104px) 0 28px; }
.footer-brand, .footer-contact, .footer-support, .footer-policies { display: grid; align-content: start; justify-items: start; }
.footer-brand { gap: 18px; }
.footer-logo { display: block; width: min(100%, 210px); }
.footer-logo img { display: block; width: 100%; height: auto; }
.footer-kicker, .footer-heading { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.footer-kicker { color: #a8a8a8; }
.footer-statement { max-width: 560px; margin: 0; color: #d5d5d5; font-size: clamp(19px, 2vw, 27px); font-weight: 500; line-height: 1.35; letter-spacing: -.02em; }
.footer-cta { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; margin-top: 8px; padding: 0 22px; background: #fff; color: #050505 !important; font-size: 14px; font-weight: 800; text-decoration: none; text-transform: uppercase; letter-spacing: .08em; }
.footer-contact { gap: 10px; color: #c5c5c5; font-size: 14px; line-height: 1.6; }
.footer-contact strong, .footer-heading { color: #fff; }
.footer-contact .footer-heading, .footer-support .footer-heading { margin-bottom: 10px; }
.footer-contact address { max-width: 320px; color: #929292; font-style: normal; }
.footer-policies { gap: 10px; color: #c5c5c5; font-size: 14px; }
.site-footer a { color: inherit; text-underline-offset: 4px; }
.footer-bottom { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 24px; margin-top: 20px; padding-top: 24px; border-top: 1px solid #242424; color: #777; font-size: 12px; }
@media (max-width: 767px) {
  .sales-section, .registration-panel { scroll-margin-top: 72px; }
  .footer-inner { grid-template-columns: minmax(0, 1fr); gap: 40px; width: min(calc(100% - 36px), var(--content-width)); padding: 56px 0 24px; }
  .footer-brand, .footer-contact, .footer-support { padding-bottom: 0; }
  .footer-cta { width: 100%; }
  .footer-bottom { grid-column: 1; flex-direction: column; gap: 10px; margin-top: 0; }
}

/* Compact laptops: avoid the abrupt jump from tablet sizing to large desktop. */
@media (min-width: 1025px) and (max-width: 1366px) {
  :root {
    --title-hero: clamp(60px, 5vw, 68px);
    --title-section: clamp(40px, 3.35vw, 46px);
    --title-subsection: 26px;
    --title-card: 19px;
    --content-width: 1120px;
    --section-space: 76px;
    --grid-space: 28px;
    --card-space: 22px;
  }
  body { font-size: 18px; }
  #gioi-thieu { padding: 80px 28px; }
  #gioi-thieu .section-inner { width: min(calc(100% - 56px), 1120px); margin-inline: auto; }
  .sales-section:not(:first-child) { padding-block: var(--section-space); }
  #nguoi-dan-dat .founder-portrait { height: 560px; }
}
