/* Shared frontend branding. No admin, player-stage, or authentication behavior changes. */
body.cdp-brand {
  --cdp-ink: #202733;
  --cdp-muted: #62666e;
  --cdp-green: #77531c; /* Legacy component token, retained to avoid rewriting integrations. */
  --cdp-green-dark: #513811;
  --cdp-gold: #b68a44;
  --cdp-paper: #f7f5ef;
  --cdp-line: #ded6c7;
  --cdp-shadow: 0 12px 36px rgb(8 16 27 / 7%);
  --brand-night: #030b14;
  --brand-panel: #101b29;
  --brand-gold: #efd09a;
  --wp--preset--color--primary: #77531c;
  color: var(--cdp-ink);
  background: var(--cdp-paper);
}
.cdp-brand .cdp-site-header,
.cdp-brand .cdp-site-footer {
  color: #c6c5c3;
  background: var(--brand-night);
  border-color: #66502e;
}
.cdp-brand .cdp-site-header :is(a, .wp-block-site-title a),
.cdp-brand .cdp-site-footer a { color: var(--brand-gold); }
.cdp-brand .cdp-site-header .wp-block-site-title { font-size: 22px; letter-spacing: .07em; }
.cdp-brand .cdp-site-header .wp-block-site-title a {
  display: inline-flex; gap: 9px; align-items: center;
}
.cdp-brand .cdp-site-header .wp-block-site-title a::before {
  content: ''; width: 28px; height: 43px; flex: 0 0 28px;
  box-sizing: content-box; border: 3px solid transparent;
  background: transparent url('homepage/brand-calligraphy.png') center / contain no-repeat;
  filter: brightness(0) saturate(100%) invert(87%) sepia(27%) saturate(438%) hue-rotate(350deg) brightness(101%) contrast(88%);
}
.cdp-brand .cdp-site-header :is(button, .wc-block-mini-cart__button) { color: var(--brand-gold); }
.cdp-brand .cdp-site-header .wp-block-navigation__responsive-container.is-menu-open {
  color: var(--brand-gold); background: var(--brand-night);
}
.cdp-brand .cdp-site-header .wp-block-navigation a:hover { color: #fff; }
.cdp-brand :is(.cdp-page-main, .cdp-course-main) > .wp-block-post-title,
.cdp-brand .cdp-course-hero .wp-block-post-title {
  font-family: 'Songti SC', STSong, 'Noto Serif CJK SC', SimSun, serif;
  letter-spacing: .02em;
}
.cdp-brand :is(.cdp-learning-dashboard, .cdp-phone-account, .sensei-message.info) { background: #f7f2e8; }
.cdp-brand :is(.cdp-course-action, .cdp-account-courses, .woocommerce, .cdp-lesson-gate) { border-color: var(--cdp-line); }
.cdp-brand .cdp-page-content .wp-block-button__link {
  color: #fff; background: #77531c; border: 1px solid #77531c;
  border-radius: 999px; min-height: 44px; box-sizing: border-box;
}
.cdp-brand .cdp-page-content .wp-block-button__link:hover { background: #513811; }
.cdp-brand :is(.cdp-phone-form, .woocommerce-form, .woocommerce-ResetPassword) input:not([type=checkbox]):not([type=hidden]) {
  border: 1px solid #9c9283; border-radius: 8px; background: #fff; color: #202733;
  min-height: 46px; font-size: 16px; box-sizing: border-box; max-width: 100%;
}
.cdp-brand .cdp-phone-form button,
.cdp-brand .woocommerce button.button { border-radius: 10px; }
.cdp-brand :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #ad7931; outline-offset: 3px;
}
.cdp-brand .cdp-site-header :is(a, button):focus-visible { outline-color: #fff0d4; }
.cdp-brand .sensei-course-theme__sidebar { background: #eee9df; }
.cdp-brand .sensei-lms-course-navigation-lesson.current-lesson { background: #e7ddcb; }
.cdp-brand .cdp-course-action { padding: clamp(1.4rem, 4vw, 2rem); }
.cdp-brand .sensei-course-theme-locked-lesson-notice {
  background: #101b29; color: #e4e5e7;
}
.cdp-brand .sensei-course-theme-locked-lesson-notice__actions .is-secondary { color: #efd09a; }

/* Account endpoints share the night palette without decorative backgrounds. */
body.cdp-brand.woocommerce-account,
body.cdp-brand--profile {
  --cdp-ink: #e4e5e7; --cdp-muted: #bdc1c7; --cdp-paper: #030b14;
  --cdp-line: #66502e; --cdp-card: #101b29; --cdp-green: #efd09a;
}
.cdp-brand.woocommerce-account main :is(h1,h2,h3),
.cdp-brand--profile main :is(h1,h2,h3),
.cdp-brand.woocommerce-account main a { color: #efd09a; }
.cdp-brand.woocommerce-account :is(.woocommerce, .cdp-phone-account, .cdp-learning-dashboard, .cdp-account-courses) {
  background: #101b29; color: #e4e5e7; border-color: #66502e;
}
.cdp-brand.woocommerce-account :is(.cdp-phone-account, .cdp-learning-dashboard) { background: #172435; }
.cdp-brand.woocommerce-account .woocommerce :is(form.login, form.register, table.shop_table) { border-color: #756345; }
.cdp-brand.woocommerce-account .woocommerce :is(input:not([type=checkbox]):not([type=hidden]):not([type=submit]), select, textarea) {
  background: #07111e; color: #e4e5e7; border: 1px solid #8b795b;
  border-radius: 8px; min-height: 46px; font-size: 16px; color-scheme: dark;
}
.cdp-brand.woocommerce-account .woocommerce input::placeholder { color: #aeb8c5; opacity: 1; }
.cdp-brand.woocommerce-account .woocommerce :is(a.button, button.button, input.button),
.cdp-brand.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  color: #101b29; background: #efd09a; border-color: #efd09a;
}
.cdp-brand.woocommerce-account .woocommerce :is(a.button, button.button):hover { background: #f6deb5; color: #101b29; }
.cdp-brand.woocommerce-account :is(.woocommerce-info, .woocommerce-message) { background: #172435; color: #e4e5e7; }
.cdp-brand.woocommerce-account .woocommerce-error { background: #35202a; color: #ffd6d1; }
.cdp-brand.woocommerce-account :is(.woocommerce-invalid label, .required, .cdp-phone-status.is-error) { color: #ffada6; }
.cdp-brand.woocommerce-account .show-password-input { color: #efd09a; }
.cdp-brand.woocommerce-account .show-password-input::before { filter: invert(1); }
.cdp-brand.woocommerce-account :is(a,button,input,select,textarea):focus-visible { outline-color: #efd09a; }

/* Anonymous login only: one readable panel; keep dashboard and Woo endpoints unchanged. */
body.cdp-brand.cdp-account-entry .cdp-page-main{max-width:520px;margin-inline:auto;padding-block:40px}
.cdp-brand.cdp-account-entry .woocommerce{padding:28px;border-radius:18px}
.cdp-brand.cdp-account-entry .cdp-login .cdp-phone-account{background:transparent;border:0;padding:0;margin:0}
.cdp-brand.cdp-account-entry .cdp-login h1{font-family:inherit;font-size:30px;letter-spacing:0}
.cdp-brand.cdp-account-entry .cdp-login-heading>p{color:#bdc1c7}
.cdp-brand.cdp-account-entry .cdp-login-heading>.cdp-login-step{color:#efd09a}
.cdp-brand.cdp-account-entry .cdp-login-footer{border-color:#394352}
.cdp-brand.cdp-account-entry .cdp-phone-consent{color:#c7ccd4}
.cdp-brand.cdp-account-entry .cdp-code-hint,.cdp-brand.cdp-account-entry .cdp-login-register-note{color:#bdc1c7}
.cdp-brand.cdp-account-entry .woocommerce .cdp-code-row .cdp-send-code{background:transparent;color:#efd09a;border:1px solid #8b795b}
.cdp-brand.cdp-account-entry .woocommerce .cdp-code-row .cdp-send-code:hover{background:#253043;color:#fff0d4}
@media(max-width:600px){
  body.cdp-brand.cdp-account-entry .cdp-page-main{padding:24px 16px}
  .cdp-brand.cdp-account-entry .woocommerce{padding:24px 20px}
  .cdp-brand.cdp-account-entry .cdp-login h1{font-size:27px}
}

/* Dark editorial surfaces. Birth profile forms retain their own text palette. */
/* Dashboard only: keep the task first, and binding explanations in one disclosure. */
.cdp-brand.woocommerce-account.cdp-account-dashboard .cdp-learning-dashboard { padding: 0; background: transparent; }
.cdp-account-dashboard .cdp-learning-dashboard h2 { font-size: 24px; margin: 0 0 20px; }
.cdp-account-dashboard :is(.cdp-phone-account, .cdp-account-courses) { max-width: none; margin-block: 16px; padding: 20px; }
.cdp-account-dashboard .cdp-phone-account h2 { font-size: 17px; margin-bottom: 8px; }
.cdp-account-dashboard .cdp-phone-account p { margin-block: 8px 0; font-size: 16px; }
.cdp-account-dashboard .cdp-account-courses--primary { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.cdp-account-dashboard .cdp-account-courses--primary h2 { font-size: 21px; }
.cdp-account-dashboard .cdp-account-help { margin-top: 24px; font-size: 14px; color: #bdc1c7; }
.cdp-account-dashboard .cdp-account-help summary { min-height: 44px; align-content: center; cursor: pointer; }
.cdp-account-dashboard .cdp-account-help p { line-height: 1.7; }
.cdp-account-dashboard .cdp-account-help a { display: inline-flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; }
.cdp-account-dashboard summary:focus-visible { outline: 3px solid #efd09a; outline-offset: 3px; }
@media(max-width:768px) {
  .cdp-account-dashboard .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; margin-bottom: 24px; }
  .cdp-account-dashboard .woocommerce-MyAccount-navigation a { min-height: 44px; box-sizing: border-box; }
}

/* Learning centre: course-first xuan-paper surface selected in visual direction 2.5. */
body.cdp-brand.woocommerce-account.cdp-brand--learning {
  --learning-paper: #f2ebdd;
  --learning-ink: #101b29;
  --learning-gold: #b18440;
  --learning-line: #d6cbbb;
  --cdp-paper: var(--learning-paper);
  color: var(--learning-ink); background: var(--learning-paper);
  background-image: url('learning/paper-texture.jpg'); background-size: 626px 626px;
}
.cdp-brand--learning .wp-site-blocks { display: flex; flex-direction: column; min-height: 100svh; background: rgb(242 235 221 / 88%); }
.cdp-brand--learning .wp-site-blocks > header,
.cdp-brand--learning .wp-site-blocks > footer { flex-shrink: 0; }
.cdp-brand--learning .wp-site-blocks > footer { margin-block-start: auto; }
.cdp-brand--learning .cdp-site-header { background: #101619; border-bottom: 0; }
.cdp-brand--learning .cdp-site-header__inner { max-width: 970px; min-height: 68px; padding: 0; gap: 24px; }
.cdp-brand--learning .cdp-site-header .wp-block-site-title { flex-shrink: 0; font: 900 26px/1.2 'Songti SC', STSong, SimSun, serif; }
.cdp-brand--learning .cdp-site-header__inner > .wp-block-navigation { margin-inline: auto; font-size: 16px; flex-shrink: 0; }
.cdp-brand--learning .cdp-site-header .wp-block-navigation__container { flex-wrap: nowrap; gap: 24px; }
.cdp-brand--learning .cdp-site-header .wp-block-navigation-item__content { white-space: nowrap; }
.cdp-brand--learning .cdp-site-header .cdp-site-header__account a {
  border: 0; border-bottom: 2px solid #d4b16e; border-radius: 0; padding: 12px 8px; background: transparent;
}
.cdp-brand--learning .wc-block-customer-account__link { gap: 8px; text-decoration: none; }
.cdp-brand--learning .wp-block-woocommerce-mini-cart { border-left: 1px solid #aaa497; padding-left: 20px; }
.cdp-brand--learning .cdp-page-main {
  width: min(950px, calc(100% - 120px)); max-width: none; margin: 0 auto !important;
  padding: 30px 0 32px !important;
}
/* Override the WordPress constrained inner-content width, not just main. */
.cdp-brand--learning .cdp-page-main > .wp-block-post-content {
  width: 100%; max-width: none !important; margin-inline: auto !important;
}
.cdp-brand--learning .wp-block-post-content > .woocommerce {
  width: 100%; max-width: none !important; margin-inline: auto !important;
}
.cdp-brand--learning .cdp-page-main > .wp-block-post-title { display: none; }
.cdp-brand--learning .cdp-site-footer { margin-top: 0; }
.cdp-brand.woocommerce-account.cdp-brand--learning .woocommerce {
  padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
.cdp-brand--learning .woocommerce > .woocommerce-MyAccount-navigation { display: none; }
.cdp-brand--learning .woocommerce > .woocommerce-MyAccount-content { float: none; width: 100%; }
.cdp-learning-center { position: relative; color: var(--learning-ink); }
.cdp-learning-center a { color: inherit; }
.cdp-learning-center a:focus-visible, .cdp-learning-center summary:focus-visible {
  outline: 2px solid var(--learning-gold); outline-offset: 5px;
}
.cdp-learning-center__intro { padding: 0 140px; text-align: center; }
.cdp-learning-center__intro h1 {
  margin: 0; padding: 0; color: var(--learning-ink) !important;
  font: 900 52px/1.2 'Songti SC', STSong, 'Noto Serif CJK SC', SimSun, serif;
}
.cdp-learning-center__intro p { margin: 12px 0 0; color: #686258; font-size: 18px; line-height: 1.6; }
.cdp-learning-section { margin-top: 32px; }
.cdp-learning-section__title { margin: 0 0 20px; color: var(--learning-ink) !important; font: 700 26px/1.4 'Songti SC', STSong, SimSun, serif; scroll-margin-top: 24px; }
.cdp-learning-row {
  display: grid; grid-template-columns: 190px minmax(0, 1fr) 190px;
  gap: 56px; align-items: center; padding: 16px 0;
  border-bottom: 1px solid var(--learning-line);
}
.cdp-learning-row:first-child { padding-top: 4px; }
.cdp-learning-row__cover {
  position: relative; display: block; overflow: hidden; aspect-ratio: 7 / 8;
  border-radius: 4px; background: #101b29; text-decoration: none;
}
.cdp-learning-row__cover img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 64% center; }
.cdp-learning-row__cover span {
  position: absolute; inset: auto 0 0; padding: 12px; background: rgb(3 11 20 / 85%);
  color: #fff3db; font: 700 23px/1.35 'Songti SC', STSong, SimSun, serif;
  display: block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;
}
.cdp-learning-row__body { min-width: 0; }
.cdp-learning-row__body h3 {
  margin: 0 0 12px; padding: 0; color: var(--learning-ink) !important;
  font: 900 34px/1.4 'Songti SC', STSong, SimSun, serif;
  overflow-wrap: anywhere;
}
.cdp-learning-row__body h3 a { color: inherit !important; font-weight: inherit; text-decoration: none; }
.cdp-learning-row__body h3 a:hover { text-decoration: underline; text-underline-offset: 5px; }
.cdp-learning-row__subtitle, .cdp-learning-row__description { margin: 0 0 14px; color: #686258; font-size: 17px; line-height: 1.55; overflow-wrap: anywhere; }
.cdp-learning-row__description { margin-bottom: 20px; }
.cdp-learning-progress { overflow: hidden; width: 100%; height: 10px; border-radius: 999px; background: rgb(16 27 41 / 12%); }
.cdp-learning-progress span { display: block; width: var(--cdp-progress); height: 100%; border-radius: inherit; background: var(--learning-gold); }
.cdp-learning-row__status { margin: 10px 0 0; color: #686258; font-size: 16px; line-height: 1.6; }
.cdp-learning-row__status span { display: inline-block; margin-left: 10px; }
.cdp-learning-row__action {
  display: flex; box-sizing: border-box; min-height: 50px; padding: 10px 18px; align-items: center; justify-content: center;
  align-self: end; margin-bottom: 32px;
  border: 1px solid var(--learning-gold); border-radius: 5px;
  color: #684a21 !important; background: transparent; text-decoration: none; font: 900 20px/1.5 'Songti SC', STSong, SimSun, serif;
}
.cdp-learning-row__action.is-continuing { color: #efd09a !important; background: var(--learning-ink); border-color: var(--learning-ink); }
.cdp-learning-row__action:hover { color: #fff3db !important; background: var(--learning-ink); }
.cdp-learning-empty {
  display: flex; align-items: center; justify-content: space-between; gap: 32px;
  margin-top: 24px; padding-block: 32px; border-block: 1px solid var(--learning-line);
}
.cdp-learning-empty h2 { margin: 0; color: var(--learning-ink) !important; font: 700 24px/1.5 'Songti SC', STSong, SimSun, serif; }
.cdp-learning-empty p { margin: 12px 0 0; color: #686258; font-size: 15px; line-height: 1.7; }
.cdp-learning-empty__action {
  display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center;
  box-sizing: border-box; min-height: 48px; padding: 10px 22px; border: 1px solid var(--learning-ink); border-radius: 5px;
  color: #fff3db !important; background: var(--learning-ink); text-decoration: none; font-size: 16px; font-weight: 600;
}
.cdp-learning-empty__action:hover { background: #26364a; }
.cdp-personal-center { color: var(--learning-ink); }
.cdp-personal-center__header { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.cdp-personal-center__header h1 { margin: 0; padding: 0; color: var(--learning-ink) !important; font: 900 40px/1.3 'Songti SC', STSong, SimSun, serif; }
.cdp-brand--learning .cdp-personal-center a { color: var(--learning-ink) !important; }
.cdp-personal-center__header > a { display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; }
.cdp-personal-center__navigation { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px 24px; padding: 20px 0; border-block: 1px solid var(--learning-line); }
.cdp-personal-center__navigation a { display: flex; align-items: center; min-height: 44px; text-decoration: none; }
.cdp-personal-center a:hover { text-decoration: underline; }
.cdp-personal-center a:focus-visible { outline: 2px solid var(--learning-gold); outline-offset: 4px; }
.cdp-personal-center__integrations { margin-top: 24px; }
.cdp-personal-center__integrations .cdp-account-courses--primary { display: none; }
.cdp-brand--learning .cdp-personal-center__integrations :is(.cdp-phone-account, .cdp-learning-dashboard, .cdp-account-courses) {
  color: var(--learning-ink); background: transparent; border-color: var(--learning-line);
}
.cdp-brand--learning .cdp-personal-center__integrations :is(h2, h3, label) { color: var(--learning-ink) !important; }
@media (min-width: 761px) and (max-width: 1000px) {
  .cdp-brand--learning .cdp-page-main { width: calc(100% - 64px); }
  .cdp-learning-row { grid-template-columns: 144px minmax(0, 1fr) 140px; gap: 24px; }
  .cdp-learning-row__body h3 { font-size: 28px; }
  .cdp-learning-center__intro { padding-inline: 110px; }
}
/* Collapse the header before its full navigation runs out of room.
   Keep this independent from the course-list breakpoint. */
@media (max-width: 900px) {
  .cdp-brand--learning .cdp-site-header__inner { min-height: 72px; padding-inline: 0; gap: 16px; }
  .cdp-brand--learning .cdp-site-header .wp-block-navigation { display: none; }
  .cdp-brand--learning .cdp-site-header .wp-block-site-title { font-size: 24px; margin-right: auto; }
  .cdp-brand--learning .wp-block-woocommerce-mini-cart { padding-left: 12px; }
}
@media (max-width: 760px) {
  .cdp-brand--learning .cdp-page-main { width: calc(100% - 44px); padding-block: 26px 32px !important; }
  .cdp-learning-center__intro { padding: 0 0 12px; text-align: left; }
  .cdp-learning-center__intro h1 { font-size: 40px; }
  .cdp-learning-center__intro p { margin-top: 8px; font-size: 16px; }
  .cdp-personal-center__header h1 { font-size: 30px; }
  .cdp-personal-center__header { flex-wrap: wrap; gap: 8px 20px; }
  .cdp-personal-center__navigation { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cdp-learning-row { grid-template-columns: 124px minmax(0, 1fr); gap: 16px 24px; padding: 24px 0 28px; align-items: start; }
  .cdp-learning-row:first-child { padding-top: 16px; }
  .cdp-learning-row__cover { grid-row: span 2; aspect-ratio: 3 / 4; }
  .cdp-learning-row__cover img { object-fit: fill; object-position: center; }
  .cdp-learning-row__cover span { padding: 6px; font-size: 14px; }
  .cdp-learning-row__body h3 { margin-bottom: 8px; font-size: 22px; line-height: 1.4; }
  .cdp-learning-row__subtitle { margin-bottom: 12px; font-size: 14px; }
  .cdp-learning-row__description { display: none; }
  .cdp-learning-row__status { margin-top: 8px; font-size: 14px; white-space: normal; }
  .cdp-learning-row__status span { margin-left: 0; display: block; }
  .cdp-learning-row__action { grid-column: 2; align-self: stretch; margin-bottom: 0; min-height: 44px; font-size: 19px; padding: 8px 12px; }
  .cdp-learning-empty { flex-direction: column; align-items: flex-start; gap: 24px; margin-top: 16px; padding-block: 24px; }
  .cdp-learning-empty h2 { font-size: 22px; }
}
@media (max-width: 360px) {
  .cdp-brand--learning header .wp-block-site-title { font-size: 15px !important; }
  .cdp-learning-row { grid-template-columns: 92px minmax(0, 1fr); column-gap: 14px; }
  .cdp-learning-center__intro h1 { font-size: 26px; }
}

body.cdp-brand--immersive {
  --cdp-ink: #e4e5e7; --cdp-muted: #bdc1c7; --cdp-paper: #030b14;
  --cdp-green: #efd09a; --cdp-line: #66502e;
}
.cdp-brand--immersive main :is(h1, h2, h3) { color: var(--brand-gold); }
.cdp-brand--immersive main > .wp-block-post-title { border-bottom: 1px solid #66502e; padding-bottom: 22px; }
.cdp-brand--immersive .cdp-page-content { color: #d4d7db; }
.cdp-brand--immersive :is(.cdf-showcase__notice, .cdf-showcase__library a) {
  background: var(--brand-panel); color: #e4e5e7; border-color: #826334;
}
.cdp-brand--immersive :is(.cdf-showcase__badge, .cdf-showcase__footnote, .cdf-showcase__library small) { color: #c6c5c3; }
.cdp-brand--immersive .cdf-daily-result__badge { background: #273044; color: var(--brand-gold); }
.cdp-brand--immersive :is(.cdf-daily-result__dates a, .cdf-daily-result__date-form button, .cdf-showcase__tabs a) {
  background: #101b29; color: var(--brand-gold); border-color: #826334;
}
.cdp-brand--immersive .cdf-daily-result__dates [aria-current] { background: #efd09a; color: #101b29; }
.cdp-brand--immersive .cdf-profile { color: #202733; --cdp-green: #77531c; }
.cdp-brand--immersive .cdf-profile :is(h1,h2,h3,a) { color: #77531c; }
.cdp-brand--immersive .cdp-playlist .cdp-player {
  color: #e4e5e7; background: #101b29; border-color: #66502e;
}
.cdp-brand--immersive :is(.cdp-playlist__controls, .cdp-playlist__chapters) button {
  background: #101b29; color: #efd09a; border-color: #826334;
}
.cdp-brand--immersive .cdp-playlist__controls button:not(:disabled):hover,
.cdp-brand--immersive .cdp-playlist__chapters [aria-current] {
  background: #efd09a; color: #101b29;
}

/* Existing biography uses saved block colors: override only its known editorial panels. */
.cdp-brand--teacher .cdp-page-content .wp-block-group.has-background {
  background-color: #101b29 !important; border: 1px solid #66502e !important;
}
.cdp-brand--teacher .cdp-page-content :is(h2,h3).has-text-color { color: #efd09a !important; }
.cdp-brand--teacher .cdp-page-content p.has-text-color { color: #c6c5c3 !important; }
.cdp-brand--teacher .cdp-page-content figure img { border-radius: 14px; }
/* Biography v2: editable blocks, full images, a restrained long-form reading column. */
.cdp-brand--teacher .wp-block-post-content > .wp-block-group.cdp-bio:first-child { padding: 0 !important; margin: 0 !important; }
.cdp-bio { font-size: 17px; line-height: 1.95; overflow-wrap: anywhere; }
.cdp-bio .cdp-bio-section { margin-block: 64px; }
.cdp-bio .cdp-bio-hero { padding: clamp(22px,4vw,40px); background: #101b29; border: 1px solid #66502e; border-radius: 20px; }
.cdp-bio h2 { line-height: 1.4; scroll-margin-top: 100px; }
.cdp-bio .wp-block-image { margin: 28px auto; max-width: 620px; }
.cdp-bio .wp-block-image img { display: block; width: 100%; height: auto; object-fit: contain; }
.cdp-bio .cdp-bio-nav { display: flex; flex-wrap: wrap; gap: 8px 12px; padding-block: 20px; border-bottom: 1px solid #66502e; font-size: 15px; }
.cdp-bio .cdp-bio-nav a { min-height: 44px; display: inline-flex; align-items: center; }
.cdp-bio .cdp-bio-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; align-items: start; }
.cdp-bio .cdp-bio-gallery .wp-block-image { margin: 0; width: 100%; }
.cdp-bio .cdp-bio-gallery--six { grid-template-columns: repeat(3,minmax(0,1fr)); }
.cdp-bio .cdp-bio-case { margin-block: 48px; padding-top: 28px; border-top: 1px solid #66502e; }
.cdp-bio .cdp-bio-voice { padding: clamp(22px,4vw,36px); background: #101b29; border-radius: 18px; }
/* Reuse the existing licensed homepage art; quiet static texture, no extra library. */
.cdp-brand--teacher .cdp-bio :is(.cdp-bio-hero, .cdp-bio-voice) { position: relative; isolation: isolate; overflow: hidden; background-color: #0c181d !important; border-color: #5b5542 !important; }
.cdp-brand--teacher .cdp-bio :is(.cdp-bio-hero, .cdp-bio-voice)::before {
  content: ''; position: absolute; z-index: -1; pointer-events: none;
  inset: 0 0 auto auto; width: min(100%,540px); height: 320px;
  background: url('homepage/fortune.webp') 75% center / cover no-repeat; opacity: .14;
  mask-image: linear-gradient(to bottom,#000 35%,transparent);
  -webkit-mask-image: linear-gradient(to bottom,#000 35%,transparent);
}
.cdp-brand--teacher .cdp-bio .cdp-bio-voice::before { background-image: url('homepage/learning.webp'); opacity: .1; }
.cdp-brand--teacher .cdp-bio h2 { font-family: 'Songti SC', STSong, 'Noto Serif CJK SC', SimSun, serif; letter-spacing: .055em; color: #e2c898 !important; }
.cdp-brand--teacher .cdp-bio :is(.cdp-bio-nav, .cdp-bio-case) { border-color: #4b5043; }
@media(max-width:600px) {
  .cdp-bio .cdp-bio-gallery { grid-template-columns: minmax(0,1fr); }
  .cdp-bio .cdp-bio-gallery--six { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .cdp-bio .cdp-bio-section { margin-block: 44px; }
  .cdp-brand--teacher .wp-block-post-content > .cdp-bio h2 { font-size: 26px !important; }
}
@media(max-width:720px) {
  .cdp-brand .cdp-site-header .wp-block-site-title { max-width: none; font-size: 19px; }
  .cdp-brand .cdp-site-header__inner { gap: 10px; }
  .cdp-brand :is(.cdp-page-main, .cdp-course-main) { padding-block: 28px; }
}
