:root {
  --cn-ink: #151511;
  --cn-paper: #f8f6ee;
  --cn-white: #ffffff;
  --cn-olive: #0f766e;
  --cn-olive-dark: #115e59;
  --cn-peach: #edb77e;
  --cn-clay: #bd6c51;
  --cn-butter: #f2dda1;
  --cn-lilac: #c8bad8;
  --cn-mist: #dce6dc;
  --cn-line: rgba(21,21,17,.16);
  --cn-muted: #64635b;
  color-scheme: light;
}
.dark {
  --cn-ink: #f8f6ee;
  --cn-paper: #171914;
  --cn-white: #21251e;
  --cn-olive: #9db494;
  --cn-olive-dark: #bbceb4;
  --cn-peach: #c98e5f;
  --cn-clay: #a85f48;
  --cn-butter: #75683d;
  --cn-lilac: #655874;
  --cn-mist: #344038;
  --cn-line: rgba(248,246,238,.18);
  --cn-muted: #bbb9ae;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--cn-paper);
  color: var(--cn-ink);
  font-family: Inter,"Noto Sans SC",sans-serif;
  font-size: clamp(17px,calc(16px + .18vw),19px);
  line-height: 1.8; letter-spacing: 0.015em;
  -webkit-font-smoothing: antialiased;
}
body.lang-zh .en-text { display: none !important; }
body.lang-en .zh-text { display: none !important; }
body.xfl-unified-shell .xfl-nav__mobile > a { line-height: 1.5; }
body[data-xfl-region="china"] [data-xfl-theme] { display:none !important; }
body[data-xfl-region="china"] .xfl-nav__links a:hover { color:#0f766e !important; }
body[data-xfl-region="china"] .xfl-nav__intake { background:#0f766e !important; }
body[data-xfl-region="china"] .xfl-nav__intake:hover { background:#115e59 !important; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--cn-peach); outline-offset: 4px; }
.cn-serif { font-family: "Noto Serif SC",Georgia,serif; }
.cn-kicker,.cn-label {
  margin: 0 0 16px;
  color: inherit;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.cn-button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 0 25px;
  border: 1px solid var(--cn-ink);
  border-radius: 999px;
  background: transparent;
  color: var(--cn-ink);
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .035em;
  text-decoration: none;
  transition: transform .2s ease,background .2s ease,color .2s ease;
}
.cn-button:hover { transform: translateY(-2px); }
.cn-button--primary { border-color: var(--cn-olive); background: var(--cn-olive); color: #fff; }
.cn-button--peach { border-color: var(--cn-peach); background: var(--cn-peach); color: #21160f; }
.cn-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

/* China landing page */
.cn-home-hero {
  position: relative;
  min-height: min(790px,calc(100vh - 72px));
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #544f43;
  color: #fff;
}
.cn-home-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(16,19,13,.62),rgba(16,19,13,.10) 58%,rgba(16,19,13,.28)); }
.cn-home-hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.cn-home-hero__content { position:relative; z-index:1; width:min(1080px,calc(100% - 40px)); text-align:center; }
.cn-home-hero h1 {
  max-width: 900px;
  margin: 0 auto;
  font-family: "Noto Serif SC",Georgia,serif;
  font-size: clamp(52px,7.8vw,112px);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: -.06em;
  text-shadow: 0 2px 22px rgba(0,0,0,.28);
}
.cn-home-hero__lead { max-width:680px; margin:22px auto 0; font-size:clamp(17px,1.6vw,22px); font-weight:600; text-shadow:0 2px 16px rgba(0,0,0,.4); }
.cn-home-hero .cn-actions { justify-content:center; }
.cn-quote { padding:clamp(68px,8vw,118px) 24px; background:var(--cn-white); text-align:center; }
.cn-quote blockquote { max-width:980px; margin:0 auto; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(34px,4.4vw,62px); font-weight:600; line-height:1.28; letter-spacing:-.04em; }
.cn-quote p { margin:22px 0 0; color:var(--cn-muted); font-size:14px; font-weight:800; letter-spacing:.08em; }
.cn-editorial { display:grid; grid-template-columns:1fr 1fr; min-height:660px; }
.cn-editorial__copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(48px,7vw,108px); background:var(--cn-butter); }
.cn-editorial__copy--lilac { background:var(--cn-lilac); }
.cn-editorial__copy--mist { background:var(--cn-mist); }
.cn-editorial__media { position:relative; min-height:540px; overflow:hidden; background:#d8d0c3; }
.cn-editorial__media img { width:100%; height:100%; display:block; object-fit:cover; }
.cn-editorial h2,.cn-home-section h2,.cn-home-people h2 {
  margin:0;
  font-family:"Noto Serif SC",Georgia,serif;
  font-size:clamp(43px,5.3vw,78px);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-.055em;
}
.cn-editorial p { max-width:620px; margin:24px 0 0; color:rgba(21,21,17,.72); font-size:18px; }
.dark .cn-editorial p { color:rgba(248,246,238,.75); }
.cn-service-strip { display:grid; grid-template-columns:repeat(4,1fr); }
.cn-home-card { min-height:430px; display:flex; flex-direction:column; padding:clamp(32px,4vw,60px); border-right:1px solid rgba(21,21,17,.15); background:var(--cn-peach); }
.cn-home-card:nth-child(2) { background:var(--cn-mist); }
.cn-home-card:nth-child(3) { background:var(--cn-lilac); }
.cn-home-card:nth-child(4) { border-right:0; background:var(--cn-butter); }
.cn-home-card__number { font-size:13px; font-weight:900; letter-spacing:.15em; }
.cn-home-card > div { display:flex; flex-direction:column; flex-grow:1; margin-top:80px; }
.cn-home-card h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(32px,3.1vw,48px); line-height:1.1; }
.cn-home-card p {  margin:18px 0 0; color:rgba(21,21,17,.7); font-size:16px;  flex-grow:1; }
.dark .cn-home-card p { color:rgba(248,246,238,.74); }
.cn-home-card a { margin-top:30px; font-size:13px; font-weight:900; text-decoration:underline; text-underline-offset:6px; }
.cn-home-people { padding:clamp(72px,9vw,130px) max(24px,5vw); background:var(--cn-white); }
.cn-home-people__head { max-width:1300px; margin:0 auto 52px; display:flex; align-items:end; justify-content:space-between; gap:32px; }
.cn-home-people__head p { max-width:480px; margin:0; color:var(--cn-muted); }
.cn-home-people__grid { max-width:1300px; margin:0 auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.cn-home-person { position:relative; min-height:620px; overflow:hidden; background:var(--cn-paper); }
.cn-home-person img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; transition:transform .6s ease; }
.cn-home-person:hover img { transform:scale(1.025); }
.cn-home-person__caption { position:absolute; right:0; bottom:0; left:0; padding:74px 30px 28px; background:linear-gradient(transparent,rgba(12,12,10,.80)); color:#fff; }
.cn-home-person__caption h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:34px; }
.cn-home-person__caption p { margin:7px 0 0; font-size:14px; }
.cn-reviews { overflow:hidden; padding:clamp(76px,9vw,126px) 0; background:var(--cn-paper); }
.cn-reviews__head { width:min(1280px,calc(100% - 48px)); margin:0 auto 52px; display:flex; align-items:end; justify-content:space-between; gap:42px; }
.cn-reviews__head h2 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(43px,5.3vw,76px); font-weight:600; line-height:1.08; letter-spacing:-.055em; }
.cn-reviews__head > p { max-width:500px; margin:0; color:var(--cn-muted); }
.cn-review-marquee { overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.cn-review-track { width:max-content; display:flex; animation:cn-review-scroll 34s linear infinite; }
.cn-review-marquee:hover .cn-review-track { animation-play-state:paused; }
.cn-review-group { display:flex; gap:18px; padding-right:18px; }
.cn-review-card { width:340px; min-height:255px; display:flex; flex-direction:column; padding:28px; background:var(--cn-butter); transition:transform 0.4s cubic-bezier(0.16,1,0.3,1),box-shadow 0.4s cubic-bezier(0.16,1,0.3,1); cursor:pointer; }
.cn-review-card:hover { transform:scale(1.05); box-shadow:0 15px 35px rgba(21,21,17,0.06); z-index:1; }
.cn-review-card:nth-child(2) { background:var(--cn-mist); }
.cn-review-card:nth-child(3) { background:var(--cn-lilac); }
.cn-review-card:nth-child(4) { background:var(--cn-peach); }
.cn-review-card > span { font-size:12px; font-weight:900; letter-spacing:.14em; }
.cn-review-card blockquote { margin:auto 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:27px; font-weight:700; line-height:1.25; }
.cn-review-card p { margin:15px 0 0; color:rgba(21,21,17,.68); font-size:14px; }
.dark .cn-review-card p { color:rgba(248,246,238,.72); }
@keyframes cn-review-scroll { to { transform:translateX(-50%); } }
.cn-home-section { padding:clamp(76px,10vw,140px) max(24px,6vw); background:var(--cn-clay); color:#fff; }
.cn-home-section__inner { max-width:1280px; margin:0 auto; }
.cn-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:58px; border-top:1px solid rgba(255,255,255,.45); }
.cn-step { padding:28px 30px 0 0; }
.cn-step strong { display:block; margin-bottom:46px; font-size:13px; letter-spacing:.15em; }
.cn-step h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:28px; }
.cn-step p { margin:12px 0 0; color:rgba(255,255,255,.76); font-size:15px; }
.cn-home-contact { padding:clamp(78px,10vw,140px) 24px; background:var(--cn-olive); color:#fff; text-align:center; }
.cn-home-contact h2 { max-width:950px; margin:0 auto; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(48px,7vw,100px); font-weight:600; line-height:1.04; letter-spacing:-.055em; }
.cn-home-contact p { max-width:680px; margin:25px auto 0; color:rgba(255,255,255,.8); }
.cn-home-contact .cn-actions { justify-content:center; }

/* Inner China pages */
.cn-hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr); min-height:610px; background:var(--cn-white); }
.cn-hero__inner { display:contents; }
.cn-hero__inner > div:first-child { display:flex; flex-direction:column; justify-content:center; padding:clamp(48px,7vw,110px); background:var(--cn-peach); }
.cn-hero__media { position:relative; min-width:0; min-height:610px; margin:0; overflow:hidden; background:var(--cn-olive); }
.cn-hero__media > img { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.cn-hero__media--duo { background:var(--cn-line); }
.cn-hero__media--duo > img { width:50%; object-position:center top; }
.cn-hero__media--duo > img:first-child { right:auto; border-right:1px solid var(--cn-line); }
.cn-hero__media--duo > img:last-child { left:50%; }
.cn-hero h1 { max-width:790px; margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(52px,6.4vw,90px); font-weight:600; line-height:1.04; letter-spacing:-.06em; }
.cn-lead { line-height: 1.85; letter-spacing: 0.02em;  max-width:700px; margin:25px 0 0; color:rgba(21,21,17,.72); font-size:20px; }
.dark .cn-lead { line-height: 1.85; letter-spacing: 0.02em;  color:rgba(248,246,238,.75); }
.cn-section { padding:clamp(74px,9vw,125px) max(24px,6vw); background:var(--cn-paper); }
.cn-section:nth-of-type(even) { background:var(--cn-white); }
.cn-section > * { width:min(1220px,100%); margin-inline:auto; }
.cn-section h2 { margin-top:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(42px,5.2vw,74px); font-weight:600; line-height:1.08; letter-spacing:-.055em; }
.cn-intro { max-width:790px; margin-top:24px; color:var(--cn-muted); font-size:19px; }
.cn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:48px; background:var(--cn-line); border:1px solid var(--cn-line); }
.cn-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cn-card { min-width:0; min-height:220px; display:flex; flex-direction:column; padding:28px; background:var(--cn-white); }
.cn-card__number { display:block; margin-bottom:0; color:var(--cn-olive); font-size:13px; font-weight:900; letter-spacing:.15em; }
.cn-card h3 { margin:22px 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:26px; line-height:1.2; }
.cn-card p { margin:12px 0 0; color:var(--cn-muted); font-size:15px; }
.cn-card__link { display:inline-flex; width:max-content; margin-top:24px; padding-bottom:3px; border-bottom:1px solid currentColor; color:var(--cn-olive-dark); font-size:13px; font-weight:900; text-decoration:none; }
.cn-service-catalog { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:48px; }
.cn-service-card { min-height:410px; display:flex; flex-direction:column; padding:clamp(28px,3vw,42px); background:var(--cn-white); border-top:9px solid var(--cn-peach); }
.cn-service-card:nth-child(3n+2) { border-color:var(--cn-mist); }
.cn-service-card:nth-child(3n) { border-color:var(--cn-lilac); }
.cn-service-card > span { color:var(--cn-olive); font-size:12px; font-weight:900; letter-spacing:.13em; }
.cn-service-card h3 { margin:auto 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(29px,2.7vw,40px); line-height:1.12; }
.cn-service-card p { margin:17px 0 0; color:var(--cn-muted); font-size:15px; line-height: 1.7; letter-spacing: 0.02em; }
.cn-service-card strong { display:block; margin-top:18px; color:var(--cn-clay); font-size:19px; }
.cn-service-card a { width:max-content; max-width:100%; margin-top:24px; padding-bottom:3px; border-bottom:1px solid currentColor; color:var(--cn-olive-dark); font-size:13px; font-weight:900; text-decoration:none; }
.cn-service-card--price { background:var(--cn-butter); }
.cn-member-feature { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); gap:clamp(44px,8vw,130px); align-items:center; padding:clamp(76px,10vw,140px) max(24px,7vw); background:var(--cn-mist); }
.cn-member-feature h2 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(45px,6vw,84px); font-weight:600; line-height:1.06; letter-spacing:-.055em; }
.cn-member-feature p { max-width:660px; margin:0; color:var(--cn-muted); font-size:18px; }
.cn-member-feature .cn-button { margin-top:28px; }
.cn-panel { margin-top:44px; padding:clamp(34px,5vw,62px); background:var(--cn-mist); }
.cn-panel h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:34px; }
.cn-panel p { margin:14px 0 0; color:var(--cn-muted); }
.cn-list { display:grid; gap:0; margin:27px 0 0; padding:0; list-style:none; }
.cn-list li { padding:20px 0; border-top:1px solid var(--cn-line); color:var(--cn-muted); }
.cn-list strong { display:block; color:var(--cn-ink); font-size:18px; }
.cn-band { padding:clamp(72px,10vw,130px) max(24px,7vw); background:var(--cn-clay); color:#fff; }
.cn-band h2 { max-width:1050px; margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(42px,5.4vw,76px); font-weight:600; line-height:1.1; letter-spacing:-.05em; }
.cn-band p { max-width:780px; margin:24px 0 0; color:rgba(255,255,255,.8); }
.cn-people { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:48px; }
.cn-person { display:grid; grid-template-columns:minmax(190px,.78fr) 1.22fr; min-height:440px; background:var(--cn-white); }
.cn-person img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; }
.cn-person > div { display:flex; flex-direction:column; justify-content:center; padding:34px; }
.cn-person h3 { margin:4px 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:32px; }
.cn-person p { margin:13px 0 0; color:var(--cn-muted); font-size:16px; }
.cn-status { display:inline-flex; width:auto; margin:25px auto 0 6vw; padding:11px 16px; border-radius:999px; background:var(--cn-olive); color:#fff; font-size:13px; font-weight:900; }
.cn-contact-card { width:min(900px,100%); margin:44px auto 0; padding:clamp(32px,5vw,60px); display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.8fr); align-items:center; gap:clamp(28px,5vw,64px); background:var(--cn-butter); text-align:center; }
.cn-contact-card__id { min-width:0; }
.cn-wechat { margin:8px 0 25px; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(48px,7vw,82px); font-weight:700; line-height:1; }
.cn-wechat-qr { margin:0; }
.cn-wechat-qr img { width:min(100%,340px); height:auto; display:block; margin:0 auto; border:10px solid var(--cn-white); box-shadow:0 18px 45px rgba(21,21,17,.12); }
.cn-wechat-qr figcaption { margin-top:14px; color:var(--cn-muted); font-size:14px; font-weight:800; }
.cn-safety { margin-top:36px; padding:22px 25px; border-left:5px solid var(--cn-clay); background:var(--cn-white); color:var(--cn-muted); font-size:16px; }
.cn-person__link { display:inline-flex; width:max-content; margin-top:20px; padding-bottom:3px; border-bottom:1px solid currentColor; color:var(--cn-olive-dark); font-size:13px; font-weight:900; text-decoration:none; }

/* Detailed practitioner profile */
.cn-profile-hero { display:grid; grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr); min-height:760px; background:var(--cn-white); }
.cn-profile-portrait { min-height:760px; overflow:hidden; background:#d8d6d4; }
.cn-profile-portrait img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; }
.cn-profile-hero__copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(52px,7vw,112px); background:var(--cn-peach); }
.cn-profile-hero h1 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(60px,7.7vw,110px); font-weight:600; line-height:1; letter-spacing:-.065em; }
.cn-profile-role { margin:22px 0 0; font-size:clamp(19px,2vw,25px); font-weight:800; }
.cn-profile-summary { max-width:720px; margin:22px 0 0; color:rgba(21,21,17,.72); font-size:18px; }
.cn-profile-section { padding:clamp(76px,9vw,128px) max(24px,6vw); background:var(--cn-paper); }
.cn-profile-section:nth-of-type(even) { background:var(--cn-white); }
.cn-profile-section__inner { width:min(1220px,100%); margin:0 auto; }
.cn-profile-section h2 { max-width:980px; margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(43px,5.2vw,74px); font-weight:600; line-height:1.08; letter-spacing:-.055em; }
.cn-profile-section__lead { max-width:920px; margin:24px 0 0; color:var(--cn-muted); font-size:19px; }
.cn-credential-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-top:48px; border:1px solid var(--cn-line); background:var(--cn-line); }
.cn-credential { min-height:300px; display:flex; flex-direction:column; padding:32px; background:var(--cn-white); }
.cn-credential > span { color:var(--cn-olive); font-size:12px; font-weight:900; letter-spacing:.13em; }
.cn-credential h3 { margin:auto 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:29px; line-height:1.2; }
.cn-credential p { margin:14px 0 0; color:var(--cn-muted); font-size:15px; }
.cn-mentor-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:48px; }
.cn-mentor { min-height:350px; padding:clamp(32px,4vw,50px); background:var(--cn-mist); }
.cn-mentor:nth-child(2) { background:var(--cn-lilac); }
.cn-mentor h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:34px; line-height:1.2; }
.cn-mentor p { margin:18px 0 0; color:var(--cn-muted); }
.cn-method-list { display:flex; flex-wrap:wrap; gap:11px; margin-top:42px; }
.cn-method-list span { padding:12px 17px; border:1px solid var(--cn-line); border-radius:999px; background:var(--cn-white); font-size:15px; font-weight:750; }
.cn-specialty-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:48px; }
.cn-specialty { padding:clamp(30px,4vw,48px); background:var(--cn-white); border-top:8px solid var(--cn-peach); }
.cn-specialty:nth-child(2) { border-color:var(--cn-mist); }
.cn-specialty:nth-child(3) { border-color:var(--cn-lilac); }
.cn-specialty:nth-child(4) { border-color:var(--cn-butter); }
.cn-specialty:nth-child(5) { grid-column:1/-1; border-color:var(--cn-olive); }
.cn-specialty h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:34px; }
.cn-specialty p { margin:18px 0 0; color:var(--cn-muted); font-size:16px; }
.cn-profile-safety { margin-top:48px; padding:clamp(30px,4vw,48px); background:var(--cn-clay); color:#fff; }
.cn-profile-safety h3 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:34px; }
.cn-profile-safety p { margin:16px 0 0; color:rgba(255,255,255,.82); }

/* China ten health standards */
.cn-health-hero .cn-hero__inner > div:first-child { background:var(--cn-mist); }
.cn-health-hero .cn-hero__media > img { object-position:center 42%; }
.cn-health-check { padding:clamp(72px,9vw,126px) max(20px,5vw); background:var(--cn-paper); }
.cn-health-check__intro { width:min(1180px,100%); margin:0 auto 44px; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.55fr); gap:20px clamp(36px,8vw,120px); align-items:end; }
.cn-health-check__intro .cn-label { grid-column:1/-1; margin:0; }
.cn-health-check__intro h2 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(40px,5vw,70px); font-weight:600; line-height:1.08; letter-spacing:-.05em; }
.cn-health-check__intro > p:last-child { margin:0; color:var(--cn-muted); font-size:17px; }
.cn-health-source-note { width:min(1180px,100%); margin:0 auto 22px; padding:18px 22px; border-left:5px solid var(--cn-olive); background:var(--cn-mist); color:var(--cn-muted); font-size:14px; }
.cn-health-check__panel { width:min(1180px,100%); margin:0 auto; padding:clamp(30px,5vw,70px); border:1px solid var(--cn-line); background:var(--cn-white); }
.cn-health-progress__meta { display:flex; align-items:center; justify-content:space-between; gap:18px; color:var(--cn-olive-dark); font-size:12px; font-weight:900; letter-spacing:.12em; }
.cn-health-progress__track { height:4px; margin-top:15px; overflow:hidden; background:var(--cn-line); }
.cn-health-progress__track span { width:10%; height:100%; display:block; background:var(--cn-olive); transition:width .25s ease; }
.cn-health-question__number { margin:52px 0 0; color:var(--cn-olive-dark); font-size:13px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.cn-health-question__title { max-width:900px; margin:18px 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(34px,4vw,58px); font-weight:600; line-height:1.16; letter-spacing:-.04em; }
.cn-health-question__hint { max-width:980px; margin:24px 0 0; padding:24px; border-left:5px solid var(--cn-olive); background:var(--cn-mist); color:var(--cn-muted); font-size:15px; }
.cn-health-question__hint p { margin:0; }
.cn-health-question__hint p + p { margin-top:16px; }
.cn-health-question__hint strong { color:var(--cn-ink); }
.cn-health-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:32px; }
.cn-health-option { min-width:0; min-height:150px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:24px; border:1px solid var(--cn-line); background:var(--cn-paper); color:var(--cn-ink); font:800 16px/1.5 Inter,"Noto Sans SC",sans-serif; text-align:left; cursor:pointer; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.cn-health-option:hover { transform:translateY(-3px); border-color:var(--cn-olive); background:var(--cn-mist); }
.cn-health-option__letter { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--cn-olive); border-radius:999px; color:var(--cn-olive-dark); font-size:12px; }
.cn-health-option__arrow { color:var(--cn-olive); font-size:22px; }
.cn-health-registration .cn-health-question__number { margin-top:0; }
.cn-health-registration__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; margin-top:38px; }
.cn-health-registration label { display:grid; gap:10px; color:var(--cn-olive-dark); font-size:12px; font-weight:900; letter-spacing:.12em; }
.cn-health-registration input { width:100%; min-height:62px; padding:13px 16px; border:1px solid var(--cn-line); border-radius:0; background:var(--cn-paper); color:var(--cn-ink); font:700 18px/1.2 Inter,"Noto Sans SC",sans-serif; }
.cn-health-registration input:focus { border-color:var(--cn-olive); outline:3px solid rgba(15,118,110,.14); }
.cn-health-registration__privacy { max-width:790px; margin:22px 0 26px; color:var(--cn-muted); font-size:14px; }
.cn-health-result .cn-label { margin:0; color:var(--cn-olive-dark); }
.cn-health-result h3 { max-width:900px; margin:18px 0 0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(40px,5vw,70px); font-weight:600; line-height:1.1; letter-spacing:-.05em; }
.cn-health-result__lead { max-width:820px; margin:20px 0 0; color:var(--cn-muted); font-size:18px; }
.cn-health-result__identity { margin:24px 0 0; color:var(--cn-olive-dark); font-weight:850; }
.cn-health-summary { margin-top:36px; border-top:1px solid var(--cn-line); }
.cn-health-summary__row { display:grid; grid-template-columns:52px 1fr 1fr; gap:18px; align-items:center; padding:17px 0; border-bottom:1px solid var(--cn-line); }
.cn-health-summary__row > span { color:var(--cn-olive); font-size:12px; font-weight:900; letter-spacing:.12em; }
.cn-health-summary__row strong { font-size:16px; }
.cn-health-summary__row em { color:var(--cn-muted); font-size:15px; font-style:normal; text-align:right; }
.cn-health-copy-box { display:grid; gap:10px; margin-top:32px; color:var(--cn-olive-dark); font-size:12px; font-weight:900; letter-spacing:.12em; }
.cn-health-copy-box textarea { width:100%; min-height:330px; resize:vertical; padding:20px; border:1px solid var(--cn-line); border-radius:0; background:var(--cn-paper); color:var(--cn-ink); font:600 15px/1.75 Inter,"Noto Sans SC",sans-serif; letter-spacing:0; }
.cn-health-copy-box textarea:focus { border-color:var(--cn-olive); outline:3px solid rgba(15,118,110,.14); }
.cn-health-result__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }
.cn-health-result__actions button { cursor:pointer; }
.cn-health-restart { min-height:52px; padding:0 14px; border:0; background:transparent; color:var(--cn-muted); font:800 13px/1 Inter,"Noto Sans SC",sans-serif; text-decoration:underline; text-underline-offset:5px; cursor:pointer; }
.cn-health-copy-status { min-height:28px; margin:18px 0 0; color:var(--cn-olive-dark); font-size:14px; }
.cn-health-boundary { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(40px,9vw,140px); align-items:end; padding:clamp(70px,9vw,126px) max(24px,7vw); background:var(--cn-clay); color:#fff; }
.cn-health-boundary h2 { margin:0; font-family:"Noto Serif SC",Georgia,serif; font-size:clamp(42px,5.5vw,78px); font-weight:600; line-height:1.08; letter-spacing:-.05em; }
.cn-health-boundary > p { max-width:620px; margin:0; color:rgba(255,255,255,.82); font-size:18px; }

/* China referral gift */
.cn-referral-form { margin-top:44px; padding:clamp(30px,5vw,58px); background:var(--cn-butter); border:1px solid var(--cn-line); }
.cn-referral-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.cn-referral-field { display:grid; gap:9px; color:var(--cn-ink); font-size:14px; font-weight:850; }
.cn-referral-field--wide { grid-column:1 / -1; }
.cn-referral-field input,.cn-referral-field select { width:100%; min-height:54px; padding:0 16px; border:1px solid var(--cn-line); border-radius:0; background:var(--cn-white); color:var(--cn-ink); font:600 16px/1.4 Inter,"Noto Sans SC",sans-serif; }
.cn-referral-field input:focus,.cn-referral-field select:focus { outline:3px solid rgba(86,107,79,.2); border-color:var(--cn-olive); }
.cn-referral-form .cn-actions { margin-top:24px; }
.cn-referral-result { min-height:0; margin-top:24px; padding:24px; background:var(--cn-white); border-left:6px solid var(--cn-olive); }
.cn-referral-result[hidden] { display:none; }
.cn-referral-code { display:block; margin-bottom:10px; color:var(--cn-olive-dark); font-size:14px; font-weight:900; letter-spacing:.08em; }
.cn-referral-message { margin:0; color:var(--cn-muted); white-space:pre-wrap; overflow-wrap:anywhere; }
.cn-referral-status { min-height:24px; margin:14px 0 0; color:var(--cn-olive-dark); font-size:14px; font-weight:800; }

@media (max-width: 980px) {
  .cn-editorial,.cn-hero { grid-template-columns:1fr; }
  .cn-editorial__media { min-height:520px; order:-1; }
  .cn-service-strip { grid-template-columns:1fr; }
  .cn-home-card { min-height:330px; border-right:0; border-bottom:1px solid rgba(21,21,17,.16); }
  .cn-home-people__head { align-items:start; flex-direction:column; }
  .cn-reviews__head { align-items:start; flex-direction:column; }
  .cn-steps { grid-template-columns:repeat(2,1fr); gap:36px 20px; }
  .cn-hero__inner > div:first-child { min-height:560px; }
  .cn-hero__media { min-height:420px; }
  .cn-grid { grid-template-columns:1fr; }
  .cn-service-catalog { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cn-member-feature { grid-template-columns:1fr; }
  .cn-grid--two,.cn-people { grid-template-columns:1fr; }
  .cn-profile-hero { grid-template-columns:1fr; }
  .cn-profile-portrait { min-height:0; aspect-ratio:4/5; }
  .cn-profile-hero__copy { min-height:580px; }
  .cn-credential-grid { grid-template-columns:1fr; }
  .cn-mentor-grid,.cn-specialty-grid { grid-template-columns:1fr; }
  .cn-specialty:nth-child(5) { grid-column:auto; }
}
@media (max-width: 640px) {
  .cn-home-hero { min-height:650px; }
  .cn-home-hero__content { width:calc(100% - 32px); }
  .cn-home-hero h1 { font-size:clamp(46px,14vw,65px); }
  .cn-home-hero__lead { font-size:17px; }
  .cn-editorial__media { min-height:390px; }
  .cn-editorial__copy { padding:54px 22px; }
  .cn-editorial h2,.cn-home-section h2,.cn-home-people h2 { font-size:clamp(39px,12vw,55px); }
  .cn-home-card { padding:38px 22px; }
  .cn-home-people { padding:68px 12px; }
  .cn-home-people__head { padding:0 10px; }
  .cn-home-people__grid { grid-template-columns:1fr; }
  .cn-home-person { min-height:500px; }
  .cn-reviews__head { width:calc(100% - 32px); margin-bottom:38px; }
  .cn-reviews__head h2 { font-size:clamp(39px,12vw,55px); }
  .cn-review-card { width:290px; min-height:235px; padding:24px; }
  .cn-review-card blockquote { font-size:24px; }
  .cn-review-track { animation:none; transform:none; }
  .cn-review-marquee { overflow-x:auto; mask-image:none; -webkit-mask-image:none; scrollbar-width:none; }
  .cn-review-marquee::-webkit-scrollbar { display:none; }
  .cn-review-group[aria-hidden="true"] { display:none; }
  .cn-steps { grid-template-columns:1fr; }
  .cn-step { padding-right:0; }
  .cn-step strong { margin-bottom:16px; }
  .cn-home-contact { padding:78px 18px; }
  .cn-actions { display:grid; grid-template-columns:1fr; }
  .cn-button { width:100%; }
  .cn-hero__inner > div:first-child { min-height:540px; padding:58px 20px; }
  .cn-hero__media { min-height:300px; }
  .cn-hero h1 { font-size:clamp(46px,13.5vw,60px); }
  .cn-lead,.cn-intro { font-size:17px; }
  .cn-section { padding:68px 12px; }
  .cn-section > .cn-label,.cn-section > h2,.cn-section > .cn-intro { width:calc(100% - 20px); }
  .cn-section h2,.cn-band h2 { font-size:clamp(39px,12vw,54px); }
  .cn-band { padding:68px 22px; }
  .cn-card { min-height:200px; padding:24px 20px; }
  .cn-card h3 { margin-top:20px; font-size:24px; }
  .cn-service-catalog { grid-template-columns:1fr; gap:12px; }
  .cn-service-card { min-height:340px; padding:30px 23px; }
  .cn-member-feature { padding:68px 22px; }
  .cn-person { grid-template-columns:1fr; }
  .cn-person img { height:auto; aspect-ratio:4/5; }
  .cn-person > div { padding:28px 22px; }
  .cn-contact-card { grid-template-columns:1fr; padding:42px 20px; }
  .cn-profile-hero__copy { min-height:520px; padding:58px 20px; }
  .cn-profile-hero h1 { font-size:clamp(58px,18vw,76px); }
  .cn-profile-summary { font-size:16px; }
  .cn-profile-section { padding:68px 12px; }
  .cn-profile-section__inner > .cn-label,.cn-profile-section__inner > h2,.cn-profile-section__inner > .cn-profile-section__lead { width:calc(100% - 20px); margin-inline:auto; }
  .cn-profile-section h2 { font-size:clamp(39px,12vw,54px); }
  .cn-credential { min-height:270px; padding:26px 22px; }
  .cn-mentor,.cn-specialty,.cn-profile-safety { padding:30px 22px; }
  .cn-health-check { padding:64px 12px; }
  .cn-health-check__intro { grid-template-columns:1fr; padding:0 10px; margin-bottom:34px; }
  .cn-health-check__intro .cn-label { grid-column:auto; }
  .cn-health-check__panel { min-height:0; padding:38px 20px; }
  .cn-health-question__number { margin-top:38px; }
  .cn-health-options { grid-template-columns:1fr; margin-top:30px; }
  .cn-health-option { min-height:92px; }
  .cn-health-registration__grid { grid-template-columns:1fr; }
  .cn-health-registration .cn-button { width:100%; }
  .cn-health-summary__row { grid-template-columns:38px 1fr; gap:10px; }
  .cn-health-summary__row em { grid-column:2; text-align:left; }
  .cn-health-result__actions { display:grid; grid-template-columns:1fr; }
  .cn-health-boundary { grid-template-columns:1fr; padding:68px 22px; }
  .cn-referral-form { padding:28px 18px; }
  .cn-referral-fields { grid-template-columns:1fr; }
  .cn-referral-field--wide { grid-column:auto; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .cn-home-person img,.cn-button { transition:none; }
  .cn-review-track { animation:none; transform:none; }
  .cn-review-marquee { overflow-x:auto; mask-image:none; -webkit-mask-image:none; scrollbar-width:none; }
  .cn-review-marquee::-webkit-scrollbar { display:none; }
  .cn-review-group[aria-hidden="true"] { display:none; }
}

/* Membership Table */

.dark 
.dark 
.dark 



/* Luxury Membership Table */
.cn-membership-table-wrap {
  overflow-x: auto;
  margin-top: 64px;
}

.cn-membership-table {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
  text-align: left;
}

.cn-membership-table th,
.cn-membership-table td {
  padding: 32px 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.dark .cn-membership-table th,
.dark .cn-membership-table td {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.cn-membership-table th {
  padding-top: 16px;
  padding-bottom: 40px;
  vertical-align: bottom;
}

.cn-membership-table .col-features {
  width: 20%;
}
.cn-membership-table .col-tier {
  width: 20%;
  text-align: center;
}

/* Typography for Table */
.cn-membership-table .zh-text {
  font-size: 16px;
  color: var(--cn-ink);
}
.dark .cn-membership-table .zh-text {
  color: var(--cn-sand);
}

.cn-membership-table .en-text {
  display: block;
  font-size: 11px;
  font-family: "Inter", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  opacity: 0.5;
  margin-top: 6px;
}

/* Table Headers */
.cn-membership-table th .zh-text {
  font-family: "Noto Serif SC", Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.cn-membership-table th .en-text {
  font-weight: 600;
  opacity: 0.6;
  letter-spacing: 0.15em;
  margin-top: 8px;
}

/* Prices */
.cn-membership-table .price {
  font-family: "Noto Serif SC", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--cn-ink);
}
.dark .cn-membership-table .price {
  color: var(--cn-sand);
}

/* Highlights */
.cn-membership-table .highlight {
  font-weight: 600;
  font-size: 18px;
}

/* Black Card Special Treatment */
.cn-membership-table .col-black {
  background: rgba(0, 0, 0, 0.02);
}
.dark .cn-membership-table .col-black {
  background: rgba(255, 255, 255, 0.02);
}

/* Emphasize the Black Card text */
.cn-membership-table .col-black .zh-text,
.cn-membership-table .col-black .price,
.cn-membership-table .col-black .highlight {
  color: #9f7632; /* Deep Gold */
}
.dark .cn-membership-table .col-black .zh-text,
.dark .cn-membership-table .col-black .price,
.dark .cn-membership-table .col-black .highlight {
  color: #d4af37; /* Bright Gold */
}
.cn-membership-table th.col-black .zh-text {
  font-size: 24px;
}

/* First Column Alignment */
.cn-membership-table td.col-features .zh-text {
  font-weight: 600;
}
