/* Homepage refresh, scoped so existing inner pages retain their layout. */
.home-upgrade { --home-border: #dce3da; }
.home-upgrade .hero { min-height: 740px; min-height: min(860px, 100svh); padding: 148px 0 90px; }
.home-upgrade .hero-inner { max-width: 1000px; }
.home-upgrade .hero h1 { font-size: clamp(2rem, 3.5vw, 3.5rem); line-height: 1.5; letter-spacing: .015em; }
.home-upgrade .hero-sub { max-width: 740px; line-height: 1.95; margin-bottom: 24px; }
.home-upgrade .hero-meta { max-width: 750px; line-height: 2; margin-bottom: 30px; }
.home-upgrade .hero-cta .btn { min-height: 52px; }
.home-upgrade .hero-watermark { opacity: .24; }
.home-upgrade .section { padding-top: 80px; padding-bottom: 80px; }
.home-upgrade .section-title { margin-bottom: 36px; }
.home-upgrade .section-title h2 { font-size: clamp(1.6rem, 2.6vw, 2.35rem); line-height: 1.5; }
.home-upgrade .section-title p { line-height: 1.9; }
.home-upgrade .card, .home-upgrade .plan-card { border-radius: 18px; box-shadow: 0 8px 28px rgba(35,60,46,.04); }
.home-upgrade .card p, .home-upgrade .plan-meta { line-height: 1.9; }
.home-upgrade .step-flow { gap: 16px; }
.home-upgrade .step-item { background: #fffdf8; border: 1px solid var(--home-border); border-radius: 14px; padding: 24px 18px; }
.home-upgrade .section-banner img { height: auto; max-height: 280px; object-fit: contain; }
.home-upgrade .menu-toggle { background: transparent; padding: 6px; font: inherit; }
.home-upgrade .nav-links { gap: 20px; }
.home-upgrade .nav-links a { white-space: nowrap; }
.home-upgrade :is(a, button, summary):focus-visible { outline: 3px solid #987520; outline-offset: 5px; }
.home-upgrade [id] { scroll-margin-top: 100px; }
.skip-link { position: fixed; top: 10px; left: 16px; transform: translateY(-180%); z-index: 2000; background: #fff; color: #204936; padding: 12px 18px; border: 2px solid #204936; }
.skip-link:focus { transform: none; }
.home-start { padding: 48px 0 64px; background: #f1f3eb; border-top: 1px solid var(--home-border); border-bottom: 1px solid var(--home-border); }
.home-start-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 28px; }
.home-start-heading h2 { font-family: var(--serif); font-size: 2rem; color: var(--green-deep); margin: 8px 0 0; }
.home-start-heading p { font-size: .95rem; color: var(--ink-2); }
.home-entry-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.home-entry { display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--home-border); border-radius: 16px; background: #fffdf8; color: #234432; transition: transform .2s, box-shadow .2s; }
.home-entry:hover { transform: translateY(-4px); box-shadow: 0 12px 30px #223d3010; }
.home-entry-index { font-size: .78rem; letter-spacing: .12em; opacity: .75; }
.home-entry h3 { display: flex; justify-content: space-between; gap: 10px; font-family: var(--serif); font-size: 1.3rem; margin: 22px 0 12px; }
.home-entry p { font-size: .94rem; line-height: 1.85; margin-bottom: 28px; }
.home-entry-link { margin-top: auto; font-size: .86rem; font-weight: 600; }
.home-entry-green { background: #254d3a; color: #fffaf0; border-color: #254d3a; }
.home-entities { border-top: 1px solid var(--home-border); padding: 24px 0; font-size: .85rem; color: var(--ink-2); line-height: 1.9; }
.home-entities p { margin: 0; }
.home-contact-bar { display: none; }
.home-wechat-dialog { position: fixed; inset: 0; margin: auto; width: min(440px, calc(100% - 36px)); max-height: calc(100svh - 48px); overflow: auto; padding: 40px 28px 28px; border: 1px solid #dce3da; border-radius: 20px; background: #fffdf8; color: #254d3a; box-shadow: 0 24px 80px #10271f33; }
.home-wechat-dialog::backdrop { background: #152e2366; backdrop-filter: blur(4px); }
.home-wechat-dialog h2 { font-family: var(--serif); margin: 8px 0 18px; font-size: 1.8rem; }
.home-wechat-dialog p { font-size: .95rem; line-height: 1.8; }
.home-wechat-dialog .home-wechat-number { font-size: 1.8rem; letter-spacing: .07em; margin: 22px 0; font-weight: 600; user-select: all; }
.home-dialog-close { position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; border: none; background: transparent; color: #254d3a; font-size: 28px; cursor: pointer; }
.home-copy-status { min-height: 1.8em; margin: 8px 0; }
@media (min-width: 861px) and (max-width: 1190px) { .home-upgrade .nav-links { gap: 12px; } .home-upgrade .nav-links a { font-size: .76rem; } .home-upgrade .header-inner { gap: 16px; padding-inline: 20px; } }
@media (max-width: 860px) {
  .home-upgrade { padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
  .home-upgrade .hero { min-height: auto; padding: 120px 0 64px; }
  .home-upgrade .hero h1 { font-size: clamp(1.65rem, 5.3vw, 2.6rem); line-height: 1.55; }
  .home-upgrade .hero-side, .home-upgrade .hero-scroll, .home-upgrade #particles, .home-upgrade .cursor-glow { display: none; }
  .home-upgrade .hero-frame { opacity: .4; }
  .home-upgrade .hero-seal { margin-bottom: 24px; }
  .home-upgrade .hero-seal-text { letter-spacing: .12em; font-size: .75rem; }
  .home-upgrade .hero-sub { font-size: .96rem; margin-bottom: 18px; }
  .home-upgrade .hero-meta { font-size: .75rem; letter-spacing: 0; }
  .home-upgrade .hero-cta { flex-direction: row; gap: 10px; }
  .home-upgrade .hero-cta .btn { flex: 1 1 180px; width: auto; font-size: .9rem; padding: 14px 18px; }
  .home-upgrade .hero-cta .btn-gold { order: -1; }
  .home-upgrade .section { padding: 52px 0; }
  .home-upgrade .nav-links { visibility: hidden; pointer-events: none; max-height: calc(100svh - 155px); overflow-y: auto; gap: 0; }
  .home-upgrade .nav-links.show { visibility: visible; pointer-events: auto; }
  .home-upgrade .nav-links a { padding: 12px 0; }
  .home-upgrade .core-text { padding: 32px 24px; }
  .home-upgrade .core-slogan { font-size: clamp(1.6rem, 5vw, 2rem); }
  .home-upgrade .core-quote { font-size: 1rem; }
  .home-upgrade .core-points { gap: 16px; }
  .home-upgrade .cp-num { font-size: 1.7rem; }
  .home-upgrade .core-photo { min-height: 0; }
  .home-upgrade .core-photo img { height: auto; }
  .home-start { padding: 32px 0; }
  .home-start-heading { display: block; }
  .home-start-heading h2 { font-size: 1.65rem; margin-bottom: 12px; }
  .home-entry-grid { grid-template-columns: 1fr; gap: 12px; }
  .home-entry { padding: 22px; }
  .home-entry h3 { margin: 12px 0 8px; }
  .home-entry p { margin-bottom: 16px; }
  .home-contact-bar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 1000; display: grid; grid-template-columns: 1fr 1fr 1.3fr; gap: 8px; padding: 12px 14px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid #dce3da; background: #fffdf8f5; backdrop-filter: blur(12px); }
  .home-contact-bar a, .home-contact-bar button { display: flex; align-items: center; justify-content: center; min-height: 46px; border: 1px solid #dce3da; border-radius: 8px; color: #254d3a; font: inherit; font-size: .86rem; background: #fffdf8; cursor: pointer; }
  .home-contact-bar .home-contact-primary { color: #fff; background: #254d3a; border-color: #254d3a; }
  .home-upgrade .chat-fab { bottom: calc(156px + env(safe-area-inset-bottom)); right: 16px; }
  .home-upgrade .back-top { bottom: calc(94px + env(safe-area-inset-bottom)); }
  .home-upgrade .chat-panel { bottom: calc(90px + env(safe-area-inset-bottom)); max-height: calc(100svh - 180px); }
}
@media (prefers-reduced-motion: reduce) {
  .home-upgrade *, .home-upgrade *::before, .home-upgrade *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .home-upgrade .reveal, .home-upgrade .hero h1, .home-upgrade .hero-seal, .home-upgrade .hero-sub, .home-upgrade .hero-meta, .home-upgrade .hero-cta { opacity: 1; transform: none; }
}
/* Keep decorative clouds within their own sections. */
.home-upgrade .section, .home-upgrade .section-tight { overflow: clip; }
/* Desktop visual direction: warm paper, forest green, restrained brass. */
.home-upgrade { --green: #28513f; --green-deep: #1d3c30; --gold: #b49359; --serif: 'Songti SC','STSong','Noto Serif SC',serif; background: #faf8f2; }
.home-upgrade .container { max-width: 1280px; padding-inline: 48px; }
.home-upgrade .site-header { background: #faf8f2f5; border-bottom: 1px solid #254d3a12; box-shadow: none; }
.home-upgrade .header-inner { max-width: 1440px; padding-inline: 48px; }
.home-upgrade .logo-text { font-size: 1.8rem; letter-spacing: .16em; }
.home-upgrade .logo-sub { letter-spacing: .15em; }
.home-upgrade .nav-links { gap: 22px; }
.home-upgrade .nav-links a { font-size: .8rem; letter-spacing: .03em; }
.home-upgrade .nav-cta { background: #254d3a; color: #fffdf5 !important; border: 1px solid #254d3a; border-radius: 5px; padding: 11px 18px; }
.home-upgrade .nav-cta:hover { background: #193d2d; }
.home-upgrade .hero { background: radial-gradient(ellipse at 4% 70%,#e5eade88,transparent 50%),#faf8f2; padding: 132px 0 66px; min-height: auto; }
.home-upgrade .hero .container { width: 100%; }
.home-hero-layout { display: grid; grid-template-columns: 1.23fr 1fr; align-items: center; gap: 64px; }
.home-upgrade .hero-inner { max-width: none; }
.home-upgrade .hero-seal { margin-bottom: 28px; gap: 14px; }
.home-upgrade .hero-seal .stamp { width: 44px; height: 44px; font-size: .85rem; animation: none; }
.home-upgrade .hero-seal-text { font-size: .72rem; letter-spacing: .18em; }
.home-upgrade .hero h1 { font-size: clamp(1.9rem,2.65vw,2.65rem); line-height: 1.6; letter-spacing: -.035em; margin-bottom: 24px; }
.home-upgrade .hero-sub { font-size: .93rem; line-height: 2; color: #637168; margin-bottom: 22px; }
.home-upgrade .hero-meta { font-size: .72rem; letter-spacing: 0; line-height: 1.9; padding-top: 18px; border-top: 1px solid #b4935940; margin-bottom: 26px; }
.home-upgrade .hero-cta { gap: 10px; }
.home-upgrade .hero-cta .btn { padding: 13px 18px; min-height: 48px; font-size: .83rem; letter-spacing: .03em; border-radius: 5px; box-shadow: none; }
.home-upgrade .hero-cta .btn-gold { order: -1; background: #254d3a; border-color: #254d3a; color: #fff; }
.home-upgrade .hero-cta .btn-primary { background: transparent; color: #254d3a; border: 1px solid #c5cfc4; }
.home-upgrade .hero-cta .btn-ghost-light { border: none; padding-inline: 6px; color: #5e6e61; }
.home-upgrade .hero-watermark, .home-upgrade .hero-frame, .home-upgrade .hero-side, .home-upgrade .hero-scroll, .home-upgrade .hero .deco-line, .home-upgrade #particles, .home-upgrade .cursor-glow { display: none; }
.home-hero-visual { position: relative; margin: 0 0 24px; padding: 0 0 0 18px; }
.home-hero-visual::before { content: ''; position: absolute; inset: 20px -18px -20px 40px; border: 1px solid #b4935950; border-radius: 140px 12px 12px 12px; pointer-events: none; }
.home-hero-visual > picture { display: block; overflow: hidden; border-radius: 130px 10px 10px 10px; background: #e3dbc9; }
.home-hero-visual > picture img { display: block; width: 100%; height: 510px; object-fit: cover; object-position: center 58%; }
.home-photo-label { position: absolute; top: 28px; right: 22px; display: flex; flex-direction: column; align-items: end; gap: 5px; color: #fffaf0; font-size: .67rem; letter-spacing: .12em; text-shadow: 0 1px 7px #000; }
.home-hero-visual figcaption { position: absolute; bottom: 24px; left: -18px; right: 32px; padding: 20px 26px; background: #fcfaf3f5; border: 1px solid #e6e1d3; display: flex; justify-content: space-between; align-items: end; gap: 12px; box-shadow: 0 8px 30px #243d2810; }
.home-photo-caption { font-family: var(--serif); color: #254d3a; line-height: 1.6; font-size: 1.35rem; }
.home-hero-visual figcaption a { font-size: .75rem; color: #637168; white-space: nowrap; }
.home-photo-stamp { position: absolute; left: -4px; top: 48px; font-family: var(--serif); background: #254d3a; color: #e6d4ac; padding: 14px 10px; font-size: 1.15rem; line-height: 1.4; border: 4px double #b49359; }
.home-start { padding: 36px 0 48px; background: #f0f1e9; }
.home-start-heading .kicker { font-size: .67rem; }
.home-start-heading h2 { font-size: 1.7rem; }
.home-start-heading p { font-size: .83rem; }
.home-entry { background: transparent; border: none; border-left: 1px solid #cdd3c7; border-radius: 0; padding: 8px 24px; }
.home-entry h3 { font-size: 1.17rem; margin-top: 16px; }
.home-entry p { font-size: .84rem; margin-bottom: 16px; }
.home-entry-index { color: #8b7954; font-size: .67rem; }
.home-entry-link { font-size: .76rem; }
.home-entry-green { color: #234432; background: transparent; border-color: #cdd3c7; }
.home-entry:hover { transform: translateY(-3px); box-shadow: none; }
.home-upgrade .section { padding-block: 76px; }
.home-upgrade .section-alt { background: #f0f3ed; }
.home-upgrade .cloud-deco, .home-upgrade .section .deco-line { display: none; }
.home-upgrade .section-title { max-width: 850px; margin-inline: auto; }
.home-upgrade .section-title .kicker { font-size: .68rem; letter-spacing: .16em; }
.home-upgrade .section-title h2 { font-size: 2rem; margin-top: 10px; }
.home-upgrade .section-title p { font-size: .9rem; color: #657267; }
.home-upgrade .section-title::after { width: 42px; height: 1px; background: #b49359; }
.home-upgrade .card { padding: 28px; border: 1px solid #dfe5da; border-radius: 8px; box-shadow: none; }
.home-upgrade .card::before, .home-upgrade .card::after { display: none; }
.home-upgrade .card-photo { height: 180px; margin: -28px -28px 24px; overflow: hidden; }
.home-upgrade .card-photo img { height: 180px; object-fit: cover; }
.home-upgrade .card h3 { font-size: 1.2rem; }
.home-upgrade .card p { font-size: .88rem; }
.home-upgrade .card-tag { font-size: .72rem; border: none; background: #f0f3ed; color: #52705a; }
.home-upgrade .cards-grid { gap: 22px; }
.home-upgrade .plan-card { border-radius: 8px; box-shadow: none; background: #fffdf8; border-color: #d8dfd1; }
.home-upgrade .plan-card.featured { border-color: #a68c52; background: #f4f3e9; }
.home-upgrade .plan-card h3 { font-size: 1.35rem; }
.home-upgrade .plan-badge { box-shadow: none; }
.home-upgrade .section-banner { max-width: 720px; margin-inline: auto; border-radius: 8px; box-shadow: none; border-color: #d9dfd0; }
.home-upgrade .section-banner img { width: 100%; height: 180px; object-fit: cover; }
.home-upgrade .core-stage { box-shadow: none; border-color: #d9d8c3; border-radius: 10px; }
.home-upgrade .core-stage::before { display: none; }
.home-upgrade .core-text { padding: 44px 36px; }
.home-upgrade .core-slogan { font-size: clamp(1.7rem,2.6vw,2.5rem); }
.home-upgrade .core-quote { font-size: 1rem; }
.home-upgrade .core-points { gap: 20px; }
.home-upgrade .cp-num { font-size: 1.7rem; }
.home-upgrade .cp-text { font-size: .68rem; }
.home-upgrade .story-text h2 { font-size: 2rem; line-height: 1.6; }
.home-upgrade .story-text p, .home-upgrade .story-list li { font-size: .94rem; }
.home-upgrade .img-frame { border-radius: 10px; box-shadow: none; }
.home-upgrade .img-frame .corner, .home-upgrade .img-shine { display: none; }
.home-upgrade .step-item { background: #fffdf8; box-shadow: none; }
.home-upgrade .step-item h4 { font-size: .95rem; }
.home-upgrade .step-item p { font-size: .8rem; }
.home-upgrade .stats-row { background: #e9eee5; border: none; border-radius: 8px; }
.home-upgrade .faq-item { border-radius: 6px; box-shadow: none; }
.home-upgrade .faq-item summary { font-size: 1rem; }
.home-visit { background: #234b38; color: #f5f1e7; padding: 68px 0; }
.home-visit-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }
.home-visit .kicker { color: #d6c398; }
.home-visit h2 { font-family: var(--serif); font-size: 2.65rem; line-height: 1.5; color: #fffaf0; margin: 22px 0 18px; }
.home-visit-intro > p { color: #c8d3c4; font-size: .92rem; margin-bottom: 30px; }
.home-visit .btn-gold { background: #e5d5ae; border-color: #e5d5ae; color: #254d3a; box-shadow: none; border-radius: 5px; font-size: .85rem; }
.home-visit-details { display: flex; flex-direction: column; justify-content: center; }
.home-visit-row { display: flex; justify-content: space-between; padding: 18px 0; gap: 24px; border-bottom: 1px solid #ffffff25; }
.home-visit-row > span, .home-visit-wechat > div > span { font-size: .75rem; color: #b5c9b5; line-height: 2; }
.home-visit-row p { font-size: 1rem; line-height: 1.8; margin: 0; }
.home-visit-row a { color: #fffaf0; }
.home-visit-wechat { align-items: center; border-bottom: 0; }
.home-visit-wechat img { display: block; width: 84px; height: 84px; object-fit: contain; background: #fff; padding: 4px; border-radius: 4px; }
.home-upgrade .site-footer { padding-top: 56px; background: #f5f3eb; }
.home-upgrade .footer-brand p { font-size: .8rem; line-height: 1.95; }
.home-upgrade .footer-kepu { font-size: .73rem; }
.home-upgrade .btn:hover { box-shadow: none; }
@media (min-width:861px) and (max-width:1190px) {
  .home-upgrade .header-inner { padding-inline: 24px; }
  .home-upgrade .logo-sub { display: none; }
  .home-upgrade .nav-links { gap: 13px; }
  .home-upgrade .nav-links a { font-size: .73rem; }
  .home-upgrade .container { padding-inline: 32px; }
  .home-hero-layout { gap: 36px; grid-template-columns: 1.15fr 1fr; }
  .home-upgrade .hero h1 { font-size: 1.9rem; }
  .home-hero-visual > picture img { height: 500px; }
  .home-photo-caption { font-size: 1.1rem; }
  .home-hero-visual figcaption { padding: 18px; right: 16px; }
  .home-hero-visual figcaption a { font-size: .65rem; }
}
@media (max-width:860px) {
  .home-upgrade .container { padding-inline: 22px; }
  .home-upgrade .header-inner { padding-inline: 22px; }
  .home-upgrade .logo-text { font-size: 1.5rem; }
  .home-upgrade .logo-sub { font-size: .6rem; }
  .home-upgrade .hero { padding-top: 112px; padding-bottom: 36px; }
  .home-hero-layout { grid-template-columns: 1fr; gap: 36px; }
  .home-upgrade .hero h1 { font-size: clamp(1.5rem,5.1vw,2.5rem); letter-spacing: -.025em; }
  .home-upgrade .hero-sub { font-size: .9rem; }
  .home-upgrade .hero-meta { font-size: .7rem; }
  .home-upgrade .hero-cta .btn { flex: 1 1 140px; padding: 12px; font-size: .78rem; }
  .home-upgrade .hero-cta .btn-ghost-light { flex-basis: 100%; }
  .home-hero-visual { margin: 0 12px 18px; padding-left: 8px; }
  .home-hero-visual > picture { border-radius: 90px 8px 8px 8px; }
  .home-hero-visual > picture img { height: 340px; object-position: center 58%; }
  .home-hero-visual::before { inset: 12px -10px -12px 26px; border-radius: 95px 8px 8px 8px; }
  .home-hero-visual figcaption { left: -12px; bottom: 18px; right: 12px; padding: 18px; }
  .home-photo-caption { font-size: 1.1rem; }
  .home-hero-visual figcaption a { font-size: .65rem; }
  .home-photo-stamp { font-size: .9rem; left: -8px; }
  .home-upgrade .nav-links { gap: 0; }
  .home-upgrade .nav-links a { font-size: .9rem; }
  .home-upgrade .section { padding-block: 48px; }
  .home-upgrade .section-title h2 { font-size: 1.55rem; }
  .home-upgrade .section-title p { font-size: .86rem; }
  .home-upgrade .card-photo, .home-upgrade .card-photo img { height: 200px; }
  .home-upgrade .cards-grid { gap: 18px; }
  .home-upgrade .core-text { padding: 30px 24px; }
  .home-upgrade .core-slogan { font-size: 1.7rem; }
  .home-upgrade .story-text h2 { font-size: 1.65rem; }
  .home-visit { padding-block: 44px; }
  .home-visit-layout { grid-template-columns: 1fr; gap: 28px; }
  .home-visit h2 { font-size: 2rem; margin-top: 16px; }
  .home-visit-row p { font-size: .88rem; }
  .home-entry { padding: 18px 4px; border-left: none; border-top: 1px solid #cdd3c7; }
}
/* Four-step illustrated customer journey. Text stays live for mobile and accessibility. */
.home-care-journey { padding: 68px 0 56px; background: #faf8f2; border-block: 1px solid #b4935929; }
.care-journey-heading { text-align: center; margin-bottom: 32px; }
.care-journey-heading .kicker { color: #867449; font-size: .73rem; }
.care-journey-heading h2 { color: #254d3a; font-family: var(--serif); font-size: 2.5rem; letter-spacing: .12em; margin: 12px 0; }
.care-journey-heading > p { font-size: .92rem; color: #657267; }
.care-journey-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.care-journey-step { min-width: 0; position: relative; border: 1px solid #dfe3d6; border-radius: 16px; background: #fffdf8; }
.care-journey-step:not(:last-child)::after { content: '→'; position: absolute; top: 42%; right: -19px; color: #9b8654; z-index: 1; font-size: 19px; }
.care-journey-art { position: relative; overflow: hidden; aspect-ratio: 543 / 724; border-radius: 16px 16px 0 0; background: #faf8f2; }
.care-journey-art img { position: absolute; top: 0; left: calc(var(--step-index) * -100%); width: 400%; max-width: none; height: auto; display: block; }
.care-journey-copy { position: relative; padding: 22px 22px 26px; border-top: 1px solid #b4935920; }
.care-journey-num { display: block; color: #ad986c; font-size: .7rem; letter-spacing: .12em; margin-bottom: 10px; }
.care-journey-copy h3 { display: flex; align-items: center; gap: 10px; font-family: var(--serif); font-size: 1rem; color: #254d3a; margin-bottom: 14px; }
.care-journey-copy h3 > span { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 34px; height: 34px; color: #fffaf0; border-radius: 50%; background: #28513f; font-size: 1.18rem; }
.care-journey-copy > p { color: #657267; font-size: .84rem; line-height: 1.95; margin: 0; }
.care-journey-bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid #b4935940; margin-top: 28px; padding-top: 22px; }
.care-journey-bottom p { margin: 0; display: flex; align-items: center; gap: 16px; }
.care-journey-bottom strong { font-family: var(--serif); font-size: 1.25rem; color: #28513f; letter-spacing: .12em; }
.care-journey-bottom p > span { font-size: .78rem; color: #8b7954; }
.care-journey-bottom a { font-size: .8rem; color: #28513f; }
@media (min-width:861px) and (max-width:1100px) {
  .care-journey-grid { gap: 14px; }
  .care-journey-copy { padding: 18px 14px; }
  .care-journey-copy h3 { font-size: .88rem; gap: 7px; }
  .care-journey-step:not(:last-child)::after { right: -14px; font-size: 14px; }
}
@media (max-width:860px) {
  .home-care-journey { padding: 44px 0 38px; }
  .care-journey-heading h2 { font-size: 2rem; }
  .care-journey-heading > p { font-size: .85rem; line-height: 1.85; }
  .care-journey-grid { grid-template-columns: 1fr; gap: 26px; }
  .care-journey-step { display: grid; grid-template-columns: 35% 1fr; }
  .care-journey-art { border-radius: 16px 0 0 16px; align-self: center; }
  .care-journey-copy { border-top: 0; padding: 22px 18px; }
  .care-journey-copy h3 { font-size: .95rem; gap: 8px; }
  .care-journey-copy > p { font-size: .81rem; line-height: 1.85; }
  .care-journey-step:not(:last-child)::after { content: '↓'; top: auto; bottom: -24px; right: 49%; font-size: 18px; }
  .care-journey-bottom { align-items: flex-start; flex-direction: column; gap: 16px; }
  .care-journey-bottom p { flex-wrap: wrap; gap: 8px 12px; }
}
/* Render content immediately, without waiting for an entrance animation. */
.home-upgrade { --serif: 'Songti SC','STSong','SimSun',serif; }
.home-upgrade .reveal,
.home-upgrade .hero h1,
.home-upgrade .hero-seal,
.home-upgrade .hero-sub,
.home-upgrade .hero-meta,
.home-upgrade .hero-cta { animation: none; opacity: 1; transform: none; transition-delay: 0s; }
.home-history { background:#f0f2e9; border-bottom:1px solid #d9dfd0; }
.home-history-layout { display:grid; grid-template-columns:.95fr 1.05fr; gap:64px; align-items:center; }
.home-history-picture { margin:0; padding:10px; border:1px solid #cfc7af; background:#fffdf7; border-radius:5px; }
.home-history-picture img { display:block; width:100%; height:auto; border-radius:2px; }
.home-history-picture figcaption { padding:12px 4px 4px; color:#526055; font-size:.76rem; text-align:center; }
.home-history-copy h2 { color:#234432; font-family:var(--serif); font-size:2rem; margin:14px 0 20px; line-height:1.6; }
.home-history-intro { color:#45554b; font-size:.94rem; line-height:1.95; }
.home-history-timeline { list-style:none; padding:0; margin:26px 0; }
.home-history-timeline li { display:flex; gap:18px; margin-bottom:20px; }
.home-history-timeline li > span { flex:0 0 34px; height:34px; display:flex; align-items:center; justify-content:center; border:1px solid #b29c69; color:#705b2d; font-size:.75rem; border-radius:50%; }
.home-history-timeline h3 { font-size:1rem; color:#234432; margin:3px 0 8px; }
.home-history-timeline p { font-size:.86rem; line-height:1.9; color:#45554b; margin:0; }
.home-history-note { font-size:.76rem; line-height:1.9; color:#526055; margin-bottom:22px; }
@media(max-width:860px) { .home-history-layout { grid-template-columns:1fr; gap:28px; } .home-history-copy h2 { font-size:1.65rem; } .home-history-timeline li { gap:14px; } }

/* Five eras: visible homepage overview, no carousel or extra scripts. */
.history-preview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:32px 0}
.history-preview-card{display:block;height:100%;background:#fffdf7;border:1px solid #d6d6c4;border-radius:8px;overflow:hidden;text-decoration:none;color:#254633;transition:transform .2s,border-color .2s}
.history-preview-card:hover{transform:translateY(-4px);border-color:#9d8756}
.history-preview-card:focus-visible{outline:3px solid #28513f;outline-offset:4px}
.history-preview-card img{display:block;width:100%;height:auto;aspect-ratio:1400/907}
.history-preview-copy{padding:20px 16px}.history-preview-era{font-size:.76rem;color:#756033}.history-preview-copy h3{font-size:1.04rem;line-height:1.6;margin:12px 0;color:#254633}.history-preview-copy p{font-size:.86rem;line-height:1.85;color:#47584b;margin:0 0 18px}.history-preview-link{font-size:.8rem;color:#28513f}
.history-preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}.history-preview-bottom p{font-size:.8rem;color:#526055;line-height:1.9;max-width:650px;margin:0}
@media(max-width:1100px){.history-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.history-preview-grid{grid-template-columns:1fr;gap:22px}.history-preview-copy{padding:20px}.history-preview-copy h3{font-size:1.2rem}.history-preview-copy p{font-size:.96rem}.history-preview-bottom{flex-direction:column;align-items:flex-start}.history-preview-bottom .btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.history-preview-card{transition:none}.history-preview-card:hover{transform:none}}
.history-preview-bottom{padding-right:76px}
@media(max-width:640px){.history-preview-bottom{padding-right:48px}.history-preview-copy{padding-right:64px}}

.home-store-qr{display:block;width:min(240px,100%);height:auto;margin:16px auto;border:1px solid #e4e7df;border-radius:6px}.home-wechat-dialog .home-wechat-number{font-size:1rem;margin:12px 0}.home-wechat-dialog{text-align:center}.home-wechat-dialog .kicker{justify-content:center}
