/* Sales page only: larger readable type and a distinct membership presentation.
   Editorial content, order, prices and destinations are unchanged. */
.page {
  --paper:#f3ede2; --paper-light:#fcf9f2; --paper-card:#eee5d5; --paper-deep:#e7dcc9;
  --ink:#302c25; --ink-2:#474036; --ink-3:#5f5548; --ink-4:#6b6051;
  --vermilion:#a43627; --vermilion-dark:#86291e; --gold:#a48752; --ochre:#77603a;
  max-width:800px; font-size:18px; line-height:1.9;
  box-shadow:0 0 0 1px rgba(89,70,40,.08);
}
.page section { padding:68px 48px; }
.page p,.page li { overflow-wrap:break-word; }
.page .section-head { margin-bottom:32px; }
.page .section-title { font-size:36px; line-height:1.45; }
.page .section-sub { font-size:18px; line-height:1.85; }
.page .eyebrow { font-size:15px; letter-spacing:.16em; }
.page .hero { min-height:780px; }
.page .hero-inner { padding:42px 48px 48px; }
.page .hero-body { padding-top:100px; }
.page .hero h1 { font-size:50px; line-height:1.4; }
.page .hero-sub { font-size:18px; line-height:1.95; font-weight:400; color:#f1e6d1; }
.page .hero-brand { font-size:26px; }
.page .hero-brand small { font-size:14px; color:#e0ceab; letter-spacing:.18em; }
.page .hero-en { font-size:12px; color:#cebd9c; }
.page .hero-eyebrow { font-size:16px; letter-spacing:.2em; }
.page .hero-tag { font-size:14px; padding:7px 12px; }
.page .hero-price { flex-basis:152px; background:rgba(255,250,240,.12); }
.page .hero-price .num { font-size:42px; }
.page .hero-price .num small { font-size:18px; }
.page .hero-price .lbl { font-size:15px; }
.page .hero-offer { font-size:15px; color:#ecdbba; line-height:1.8; }
.page .btn-primary { min-height:88px; box-shadow:none; border:1px solid rgba(255,255,255,.15); }
.page .btn-primary .btn-main { font-size:22px; }
.page .btn-primary .btn-sub { font-size:15px; letter-spacing:.04em; opacity:1; }
/* Reading copy: one comfortable rhythm, including benefits and explanations. */
.page :is(.pain-item p,.pillars-lead,.pillar p,.yuan-lead,.yuan-card p,.daily-intro,.quarter .qd,.ts-lead,.ts-v,.ts-bonus li,.ts-item-d,.daily-app p,.courses-intro p,.course-q,.course-topic,.courses-foot,.benefit p,.newbie-card p,.newbie-platform,.who-item p,.teacher-card p,.basis-list li,.fit-box li,.final-sub,.final-offer .od,.meta-item .v,.step p,.faq-a,.consult .consult-lead) {
  font-size:18px; line-height:1.9;
}
.page :is(.pillar h3,.daily-app h3,.course h3,.benefit h3,.newbie-card h3,.who-item h3,.fit-box h3) { font-size:22px; line-height:1.55; }
.page :is(.pain-foot,.daily-creed,.yuan-foot) { font-size:20px; line-height:1.85; }
.page :is(.pillar h3 small,.yuan-tools,.book .status,.ref,.newbie-badge,.meta-item .k,.ledger-price .calc,.hero-price .lbl,.qr-caption) { font-size:14px; line-height:1.75; }
.page :is(.yuan-method,.books-title,.book .name,.quarter .qt,.ts-block-title,.ts-item-t,.ts-bonus-head,.teacher-basis h4,.ledger-name,.ledger-total .lbl,.final-offer .ot,.final-steps h4,.consult h4,.foot h4) { font-size:19px; line-height:1.7; }
.page :is(.daily-creed span,.teacher-name .role,.newbie-meta,.benefits-note,.value-note,.value-highlight p span,.final-warn,.final-price-unit,.foot p,.foot .contact) { font-size:16px; line-height:1.85; }
.page .ts-note,.page .foot .boundary { font-size:15px; line-height:1.9; }
.page .foot-en { font-size:12px; }
.page .teacher-name h3 { font-size:26px; }
.page .path .min { font-size:32px; }
.page .path .min small,.page .path .lbl { font-size:16px; line-height:1.75; }
.page .path { padding:24px 10px; }
.page .book { flex-wrap:wrap; padding:16px 18px; }
.page .book .name { flex:1; min-width:0; }
.page .book .status { margin-left:0; }
.page .pain-item,.page .pillar,.page .benefit,.page .newbie-card { padding:24px; border-radius:4px; }
.page .course { padding:26px 26px 26px 78px; border-radius:4px; }
.page .course-num { top:30px; left:24px; }
.page .course-topic { padding-top:16px; }
.page .ref { color:var(--ink-2); padding:4px 10px; }
.page .yuan-grid,.page .ts-grid { gap:18px; }
.page .yuan-card,.page .ts-item { padding:24px; text-align:left; border-radius:4px; }
.page .yuan-char { font-size:38px; }
/* Brass accents and warm charcoal distinguish the sales narrative from the site. */
.page :is(.yuan,.tongsheng,.benefits,.final) { background:#302c25; }
.page :is(.yuan,.tongsheng,.benefits,.final)::before { display:none; }
.page :is(.yuan .section-sub,.yuan-lead,.yuan-tools,.yuan-card p,.tongsheng .section-sub,.tongsheng .ts-lead,.ts-item-d,.tongsheng .ts-bonus li,.tongsheng .ts-note,.benefits .section-sub,.benefit p,.final-sub,.final-offer .od,.meta-item .k,.final-warn,.step p,.consult .consult-lead,.qr-caption) { color:#e2d5be; }
.page :is(.yuan-card,.ts-item,.benefit,.meta-item) { background:#39342c; border-color:#72624c; }
.page .benefit p b { color:#fff0d6; }
.page .ts-note { padding-inline:0; text-align:left; }
.page .benefit-list { gap:16px; }
.page .ledger-row { padding:22px; align-items:flex-start; flex-wrap:wrap; }
.page .ledger-info { flex:1 1 240px; }
.page .ledger-desc { font-size:16px; line-height:1.85; margin-top:6px; }
.page .ledger-price { margin-left:auto; }
.page .ledger-price .amt { font-size:22px; }
.page .ledger-head { font-size:17px; }
.page .ledger-total .amt { font-size:22px; }
.page .ledger-member { padding:28px 24px; gap:20px; }
.page .ledger-member .lbl { font-size:22px; }
.page .ledger-member .lbl small { font-size:15px; opacity:1; }
.page .ledger-member .price { font-size:48px; white-space:nowrap; }
.page .ledger-member .price small { font-size:19px; }
.page .value-highlight { border-style:solid; padding:24px; }
.page .value-highlight p { font-size:19px; }
.page .fit-box li { padding-left:26px; }
.page .fit-yes li::before { font-size:15px; color:var(--ochre); }
.page .final { border-top:4px solid #bb8d4d; }
.page .final h2 { font-size:38px; }
.page .final-price-card { padding:36px 24px; border-color:#a88b5d; background:#39342c; }
.page .final-price-now { font-size:68px; color:#f0bc72; }
.page .final-price-now small { font-size:24px; }
.page .final-meta { gap:16px; }
.page .final-offer { padding:22px; }
.page .btn-final { font-size:24px; padding:24px; animation:none; box-shadow:none; border:1px solid #dc8270; }
.page .btn-final .sub { font-size:16px; letter-spacing:.04em; opacity:1; }
.page .step-n { flex-basis:30px; height:30px; font-size:16px; }
.page .consult { margin-top:36px; padding-top:32px; }
.page .qr-card img { width:196px; }
.page details.faq-item summary { font-size:19px; line-height:1.75; padding:22px 48px 22px 22px; }
.page .faq-a { padding:0 22px 22px; }
.page .foot { padding-bottom:68px; }
.sticky-cta { padding:14px max(22px,calc((100vw - 752px)/2)) calc(14px + env(safe-area-inset-bottom)); background:#fcf9f2; }
.sticky-cta .sp .p { font-size:28px; }
.sticky-cta .sp .p small,.sticky-cta .sp .l { font-size:14px; line-height:1.5; }
.sticky-btn { min-height:52px; font-size:19px; padding:14px 26px; animation:none; box-shadow:none; white-space:nowrap; }
.page :is(.btn-primary,.btn-final):hover,.sticky-btn:hover { background:#86291e; }
.page a:focus-visible,.sticky-btn:focus-visible { outline:3px solid #dba45e; outline-offset:4px; }
@media(max-width:600px) {
 .page { font-size:17px; }
 .page section { padding:48px 22px; }
 .page .section-title { font-size:29px; }
 .page .hero-inner { padding:32px 24px 36px; }
 .page .hero { min-height:700px; }
 .page .hero-body { padding-top:40px; }
 .page .hero h1 { font-size:36px; }
 .page .hero-sub { font-size:17px; }
 .page .hero-price { flex-basis:105px; }
 .page .hero-price .num { font-size:34px; }
 .page .hero-cta-row { gap:10px; }
 .page .btn-primary { padding:16px 10px; }
 .page .btn-primary .btn-main { font-size:20px; letter-spacing:.08em; }
 .page .btn-primary .btn-sub { font-size:14px; letter-spacing:0; }
 .page .hero-price .lbl { font-size:14px; letter-spacing:0; }
 .page .yuan-grid,.page .ts-grid { grid-template-columns:1fr; }
 .page :is(.pain-item,.pillar,.benefit,.newbie-card) { padding:20px 18px; }
 .page :is(.pain-item p,.pillar p,.yuan-card p,.ts-item-d,.benefit p,.course-topic,.newbie-card p,.teacher-card p,.fit-box li,.step p,.faq-a) { font-size:17px; }
 .page .course { padding:22px 18px; }
 .page .course-num { position:static; margin-bottom:14px; }
 .page .teacher-card { padding:24px 18px; }
 .page .ledger-row { gap:10px; padding:20px 16px; }
 .page .ledger-icon { display:none; }
 .page .ledger-info { flex-basis:100%; }
 .page .ledger-price { display:flex; align-items:baseline; gap:12px; }
 .page .ledger-member { flex-wrap:wrap; padding:24px 18px; }
 .page .ledger-member .price { margin-left:auto; }
 .page .final h2 { font-size:32px; }
 .page .final-meta { grid-template-columns:1fr; }
 .page .foot { padding:40px 22px 54px; }
 .sticky-cta { padding-inline:16px; gap:12px; }
 .sticky-btn { font-size:18px; padding-inline:20px; letter-spacing:.04em; }
}
@media(max-width:360px) {
 .page .hero h1 { font-size:31px; }
 .page .hero-cta-row { flex-wrap:wrap; }
 .page .hero-price { flex:1 1 100%; flex-direction:row; gap:14px; }
 .page .hero-price .lbl { margin-top:0; }
 .page .paths { grid-template-columns:1fr; }
 .page .teacher-head { gap:12px; }
}
/* Long membership sections must remain visible even before scroll observers fire. */
.page .reveal { opacity:1; transform:none; transition:none; }
.page #join { scroll-margin-top:90px; }
