/* Traditional Chinese readability layer. Scoped to customer-facing zh-Hant pages. */
html[lang="zh-Hant"] body {
  color: #17364d;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

html[lang="zh-Hant"] body.site-cn.site-cn :where(p, li) {
  color: #35536a !important;
  font-size: max(17px, 1em) !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
}

html[lang="zh-Hant"] body.site-cn .site-header .main-nav a,
html[lang="zh-Hant"] body.site-cn .site-header .language-switch a,
html[lang="zh-Hant"] body.site-cn .site-header .language-switch button {
  font-size: 18px !important;
  font-weight: 600 !important;
}

html[lang="zh-Hant"] body.site-cn .site-header .main-nav a:not(.active):not([aria-current="page"]):not(:hover),
html[lang="zh-Hant"] body.site-cn .site-header .language-switch a:not(.active):not([aria-current="page"]):not(:hover),
html[lang="zh-Hant"] body.site-cn .site-header .language-switch button:not(.active):not([aria-current="page"]):not(:hover) {
  color: #0B3047 !important;
  -webkit-text-fill-color: #0B3047 !important;
  font-weight: 600 !important;
}

html[lang="zh-Hant"] :where(
  .cy-section-copy,
  .cy-module-text p,
  .cy-about-text p,
  .section-intro,
  .subtitle,
  .detail-panel p,
  .detail-mini-card p,
  .detail-mini-card li,
  .naming-intro,
  .naming-hero-copy,
  .naming-plan-description,
  .naming-plan-support,
  .naming-list,
  .naming-card p,
  .naming-step p,
  .naming-audience-card p,
  .naming-visual-card p,
  .naming-upgrade-benefit,
  .naming-note-copy,
  .theory-hero-copy,
  .pay-subtitle,
  .naming-price-summary,
  .naming-order-status,
  .yiwen-intro-copy,
  .yiwen-intro-line,
  .yiwen-flow-preview,
  .rules,
  .hint,
  .button-note,
  .loading-copy
) {
  color: #35536a !important;
  font-size: max(17px, 1em) !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
}

html[lang="zh-Hant"] body.site-cn.site-cn :where(
  .section-label.section-label,
  .field.field > label,
  .naming-checkout-form.naming-checkout-form label,
  .naming-choice.naming-choice > label
) {
  color: #17364d !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

html[lang="zh-Hant"] :where(
  .cy-more,
  .naming-eyebrow,
  .naming-tag,
  .pay-eyebrow,
  .naming-price-label,
  .cy-copyright,
  .cy-service-point p
) {
  color: #5a7284 !important;
  font-weight: 500 !important;
}

html[lang="zh-Hant"] :where(
  .section-label,
  .field > label,
  .naming-checkout-form label,
  .naming-choice > label
) {
  color: #17364d !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

html[lang="zh-Hant"] body.site-cn :where(input, select, textarea) {
  color: #17364d !important;
  font-size: 17px !important;
  font-weight: 600 !important;
}

html[lang="zh-Hant"] body.site-cn.site-cn input,
html[lang="zh-Hant"] body.site-cn.site-cn select,
html[lang="zh-Hant"] body.site-cn.site-cn textarea {
  color: #17364d !important;
  font-size: 17px !important;
  font-weight: 600 !important;
}

html[lang="zh-Hant"] body.site-cn.site-cn .field.field > label,
html[lang="zh-Hant"] body.site-cn.site-cn .naming-checkout-form.naming-checkout-form label,
html[lang="zh-Hant"] body.site-cn.site-cn .naming-choice.naming-choice > label {
  color: #17364d !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

html[lang="zh-Hant"] select option {
  color: #17364d;
  font-size: 17px;
  font-weight: 600;
}

html[lang="zh-Hant"] body.site-cn :where(
  .cy-primary-cta,
  .primary-button,
  .upgrade-button,
  .detail-button,
  .naming-button,
  .pay-button,
  .report-primary-button,
  button[type="submit"]
) {
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

html[lang="zh-Hant"] body.site-cn.site-cn :where(
  .cy-primary-cta.cy-primary-cta,
  .primary-button.primary-button,
  .upgrade-button.upgrade-button,
  .detail-button.detail-button,
  .naming-button.naming-button,
  .pay-button.pay-button,
  .report-primary-button.report-primary-button,
  button[type="submit"]
) {
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

html[lang="zh-Hant"] body.site-cn.site-cn #startYiwenCheckout {
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

html[lang="zh-Hant"] :where(
  .cy-section-title,
  .cy-module-text h3,
  .detail-panel h2,
  .detail-mini-card h3,
  .naming-card h3,
  .naming-step h3,
  .naming-plan-title,
  .naming-value-title-line,
  .naming-upgrade-heading-line,
  .report-heading
) {
  color: #17364d !important;
  font-weight: 600 !important;
}

html[lang="zh-Hant"] :where(
  .subpage-hero-title,
  .theory-hero-title,
  .naming-hero-slogan,
  .home-manifesto-statement
) {
  color: #17364d !important;
  font-weight: 600 !important;
}

@media (max-width: 760px) {
  html[lang="zh-Hant"] body.site-cn.site-cn :where(p, li) {
    font-size: max(16px, 1em) !important;
    line-height: 1.75 !important;
  }

  html[lang="zh-Hant"] body.site-cn .site-header .main-nav a,
  html[lang="zh-Hant"] body.site-cn .site-header .language-switch a,
  html[lang="zh-Hant"] body.site-cn .site-header .language-switch button {
    font-size: 16px !important;
  }

  html[lang="zh-Hant"] :where(
    .cy-section-copy,
    .cy-module-text p,
    .cy-about-text p,
    .section-intro,
    .subtitle,
    .detail-panel p,
    .detail-mini-card p,
    .detail-mini-card li,
    .naming-intro,
    .naming-hero-copy,
    .naming-plan-description,
    .naming-plan-support,
    .naming-list,
    .naming-card p,
    .naming-step p,
    .naming-audience-card p,
    .naming-visual-card p,
    .naming-upgrade-benefit,
    .naming-note-copy,
    .theory-hero-copy,
    .pay-subtitle,
    .naming-price-summary,
    .naming-order-status,
    .yiwen-intro-copy,
    .yiwen-intro-line,
    .yiwen-flow-preview,
    .rules,
    .hint,
    .button-note,
    .loading-copy
  ) {
    font-size: max(16px, 1em) !important;
    line-height: 1.75 !important;
  }

  html[lang="zh-Hant"] body.site-cn.site-cn :where(
    .section-label.section-label,
    .field.field > label,
    .naming-checkout-form.naming-checkout-form label,
    .naming-choice.naming-choice > label
  ) {
    font-size: 17px !important;
  }

  html[lang="zh-Hant"] :where(
    .section-label,
    .field > label,
    .naming-checkout-form label,
    .naming-choice > label
  ) {
    font-size: 17px !important;
  }

  html[lang="zh-Hant"] body.site-cn :where(input, select, textarea) {
    font-size: 16px !important;
  }

  html[lang="zh-Hant"] body.site-cn.site-cn.site-cn input,
  html[lang="zh-Hant"] body.site-cn.site-cn.site-cn select,
  html[lang="zh-Hant"] body.site-cn.site-cn.site-cn textarea {
    font-size: 17px !important;
  }

  html[lang="zh-Hant"] body.site-cn.site-cn .field.field > label,
  html[lang="zh-Hant"] body.site-cn.site-cn .naming-checkout-form.naming-checkout-form label,
  html[lang="zh-Hant"] body.site-cn.site-cn .naming-choice.naming-choice > label {
    font-size: 17px !important;
  }

  html[lang="zh-Hant"] body.site-cn :where(
    .cy-primary-cta,
    .primary-button,
    .upgrade-button,
    .detail-button,
    .naming-button,
    .pay-button,
    .report-primary-button,
    button[type="submit"]
  ) {
    font-size: 17px !important;
    letter-spacing: 0.01em !important;
  }

  html[lang="zh-Hant"] body.site-cn.site-cn :where(
    .cy-primary-cta.cy-primary-cta,
    .primary-button.primary-button,
    .upgrade-button.upgrade-button,
    .detail-button.detail-button,
    .naming-button.naming-button,
    .pay-button.pay-button,
    .report-primary-button.report-primary-button,
    button[type="submit"]
  ) {
    font-size: 17px !important;
    letter-spacing: 0.01em !important;
  }

  html[lang="zh-Hant"] body.site-cn.site-cn #startYiwenCheckout {
    font-size: 17px !important;
    letter-spacing: 0.01em !important;
  }
}

/* Preserve locked Naming payment CTA readability. */
html[lang="zh-Hant"] body.site-cn .pay-panel .pay-button {
  font-size: 20px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
}

@media (max-width: 760px) {
  html[lang="zh-Hant"] body.site-cn .pay-panel .pay-button {
    font-size: 18px !important;
    letter-spacing: 0.08em !important;
  }
}
