/* 叶敏捷医生 · 新版样式  配色取自《厌学拒学临床干预》PPT */
:root{
  --navy:#1A1F4D; --navy-2:#13205C; --navy-3:#0A1442; --ink:#20223A;
  --copper:#C97B3D; --copper-d:#A9622A; --copper-soft:#F3E3D2; --cream:#FFF8F0;
  --mist:#EEF1FB; --mist-2:#E3E8F8; --line:#D6DAEF;
  --teal:#11595C; --teal-2:#1C8C8C; --mint:#9FD8D8;
  --plum:#5B2E8C; --muted:#676C8A; --muted-2:#9499B8;
  --white:#fff;
  --serif:"Songti SC","STSong","Noto Serif SC","Noto Serif CJK SC","Source Han Serif SC","SimSun",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
  --wrap:1180px; --r-sm:6px; --r:12px; --r-lg:20px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.75;font-size:16px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--copper);outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.serif{font-family:var(--serif)}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--mist-2)}
.hdr .wrap{display:flex;align-items:center;gap:28px;height:72px}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand-mark{width:38px;height:38px;border-radius:50%;background:var(--navy);position:relative;overflow:hidden;flex-shrink:0}
.brand-mark::after{content:"";position:absolute;width:26px;height:26px;border-radius:50%;background:var(--copper);right:-8px;bottom:-8px}
.brand-name{font-family:var(--serif);font-size:21px;font-weight:700;color:var(--navy);letter-spacing:.06em;line-height:1.1}
.brand-sub{display:block;font-family:var(--sans);font-size:11.5px;font-weight:400;color:var(--muted);letter-spacing:.04em;margin-top:3px}
.nav{display:flex;gap:4px;margin-left:auto}
.nav a{font-size:15px;padding:8px 13px;border-radius:999px;color:var(--ink);transition:background .2s,color .2s}
.nav a:hover{background:var(--mist)}
.nav a[aria-current=page]{color:var(--copper-d);font-weight:600}
.hdr-cta{flex-shrink:0;font-size:14px;padding:9px 18px;border-radius:999px;background:var(--navy);color:#fff;font-weight:500}
.hdr-cta:hover{background:var(--navy-2)}
.burger{display:none;margin-left:auto;width:42px;height:42px;border:0;background:none;cursor:pointer;border-radius:8px}
.burger span{display:block;width:22px;height:2px;background:var(--navy);margin:5px auto;transition:transform .2s,opacity .2s}
@media (max-width:1020px){
  .hdr-cta{display:none}
}
@media (max-width:860px){
  .burger{display:block}
  .nav{position:fixed;inset:72px 0 auto 0;flex-direction:column;background:#fff;padding:8px 16px 20px;border-bottom:1px solid var(--line);gap:0;display:none;box-shadow:0 20px 40px rgba(26,31,77,.12)}
  .nav.open{display:flex}
  .nav a{padding:14px 8px;border-radius:0;border-bottom:1px solid var(--mist);font-size:16px}
  .burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .burger[aria-expanded=true] span:nth-child(2){opacity:0}
  .burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:999px;font-size:15.5px;font-weight:500;transition:background .2s,color .2s,border-color .2s}
.btn-copper{background:var(--copper);color:#fff}
.btn-copper:hover{background:var(--copper-d)}
.btn-ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-line{border:1.5px solid var(--navy);color:var(--navy)}
.btn-line:hover{background:var(--navy);color:#fff}
.link{color:var(--copper-d);font-weight:500;font-size:15px;border-bottom:1px solid currentColor;padding-bottom:1px}
.link:hover{color:var(--navy)}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.hero::before{content:"";position:absolute;width:760px;height:760px;border-radius:50%;background:var(--copper);right:-240px;bottom:-360px}
.hero::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:var(--navy-2);right:-120px;top:-210px}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:end;padding-top:84px}
.hero-kicker{font-size:15px;color:var(--copper-soft);margin-bottom:22px;letter-spacing:.04em}
.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(38px,5.4vw,68px);line-height:1.18;letter-spacing:.02em;margin-bottom:26px}
.hero-lead{font-size:18px;color:#D6DAEF;max-width:30em;margin-bottom:38px;font-family:var(--serif)}
.hero-btns{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:84px}
.hero-photo{align-self:end;position:relative}
.hero-photo img{width:100%;aspect-ratio:1/1.04;object-fit:cover;object-position:30% 20%;border-radius:var(--r-lg) var(--r-lg) 0 0}
.hero-card{position:absolute;left:-36px;bottom:36px;background:#fff;color:var(--ink);border-radius:var(--r);padding:16px 20px;box-shadow:0 18px 40px rgba(10,20,66,.28);max-width:270px}
.hero-card b{font-family:var(--serif);font-size:19px;color:var(--navy);display:block}
.hero-card span{font-size:13px;color:var(--muted);line-height:1.6;display:block;margin-top:2px}
.stats{position:relative;z-index:2;background:var(--navy-3)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:28px 24px 26px;border-left:1px solid rgba(255,255,255,.1)}
.stat:first-child{border-left:0;padding-left:0}
.stat b{font-family:var(--serif);font-size:40px;color:#fff;font-weight:700;line-height:1}
.stat b small{font-size:16px;margin-left:4px;color:var(--copper-soft);font-weight:400}
.stat p{font-size:13.5px;color:var(--muted-2);margin-top:8px}
.affil{background:var(--navy-3);border-top:1px solid rgba(255,255,255,.08)}
.affil .wrap{display:flex;flex-wrap:wrap;gap:10px 36px;padding-top:18px;padding-bottom:20px;font-size:13.5px;color:#B9BEDB}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr;padding-top:56px;gap:0}
  .hero-btns{margin-bottom:44px}
  .hero-photo{max-width:420px}
  .hero-card{left:auto;right:12px;bottom:20px}
  .hero::before{width:520px;height:520px;right:-260px;bottom:-200px}
  .stats .wrap{grid-template-columns:repeat(2,1fr)}
  .stat{padding:22px 0 20px 20px}
  .stat:nth-child(3){border-left:0;padding-left:0}
  .stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.1)}
}

/* ---------- sections ---------- */
.sec{padding:96px 0}
.sec-mist{background:var(--mist)}
.sec-navy{background:var(--navy);color:#fff}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:48px;flex-wrap:wrap}
.sec-head h2{font-family:var(--serif);font-size:clamp(28px,3.4vw,40px);line-height:1.3;color:var(--navy);font-weight:700;max-width:18em}
.sec-navy .sec-head h2{color:#fff}
.sec-head p{color:var(--muted);max-width:34em;margin-top:12px;font-size:16px}
.sec-navy .sec-head p{color:#B9BEDB}
.sec-tag{display:inline-block;font-size:13px;color:var(--copper-d);margin-bottom:12px;font-weight:500;letter-spacing:.03em}
.sec-navy .sec-tag{color:var(--copper-soft)}
@media (max-width:700px){.sec{padding:64px 0}.sec-head{margin-bottom:32px}}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--navy)}
.pillar{padding:32px 32px 8px 0}
.pillar+.pillar{padding-left:32px;border-left:1px solid var(--line)}
.pillar .dot{width:44px;height:44px;border-radius:50%;margin-bottom:22px}
.pillar h3{font-family:var(--serif);font-size:24px;color:var(--navy);margin-bottom:10px}
.pillar p{color:var(--muted);font-size:15.5px}
.pillar-quote{margin-top:44px;font-family:var(--serif);font-size:clamp(20px,2.2vw,26px);color:var(--navy);line-height:1.6;max-width:30em;padding-left:22px;border-left:3px solid var(--copper)}
@media (max-width:800px){.pillars{grid-template-columns:1fr}.pillar,.pillar+.pillar{padding:26px 0;border-left:0;border-top:1px solid var(--line)}.pillar:first-child{border-top:0}}

/* focus areas */
.focus{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.focus-card{border-radius:var(--r-lg);padding:44px 40px 36px;color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:440px}
.focus-card.adhd{background:var(--navy)}
.focus-card.sr{background:var(--navy-2)}
.focus-card::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-90px;opacity:.9}
.focus-card.adhd::after{background:var(--copper)}
.focus-card.sr::after{background:var(--copper)}
.focus-card h3{font-family:var(--serif);font-size:34px;margin-bottom:6px;position:relative;z-index:1}
.focus-card .en{font-size:14px;color:rgba(255,255,255,.65);margin-bottom:22px;position:relative;z-index:1;font-style:italic;font-family:Georgia,serif}
.focus-card blockquote{font-family:var(--serif);font-size:18px;line-height:1.7;color:rgba(255,255,255,.92);max-width:24em;margin-bottom:30px;position:relative;z-index:1}
.focus-mods{margin-top:auto;border-top:1px solid rgba(255,255,255,.2)}
.focus-mods a{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:16px;transition:padding .2s}
.focus-mods a:hover{padding-left:8px}
.focus-mods a span{font-size:13px;color:rgba(255,255,255,.6)}
@media (max-width:860px){.focus{grid-template-columns:1fr}.focus-card{padding:36px 26px 28px;min-height:0}}

/* scenario grid */
.scen{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.scen a{background:#fff;padding:28px 26px 24px;display:flex;flex-direction:column;gap:12px;transition:background .2s}
.scen a:hover{background:var(--cream)}
.scen .q{font-family:var(--serif);font-size:18.5px;line-height:1.6;color:var(--navy);font-weight:600}
.scen .a{font-size:14.5px;color:var(--muted);line-height:1.7}
.scen .t{margin-top:auto;font-size:13px;color:var(--copper-d)}
@media (max-width:900px){.scen{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.scen{grid-template-columns:1fr}}

/* featured story */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.feat-main{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:44px 40px;position:relative;overflow:hidden}
.feat-main::before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:var(--copper);right:-50px;top:-60px}
.feat-main .cat{font-size:13px;color:var(--copper-soft);margin-bottom:16px}
.feat-main blockquote{font-family:var(--serif);font-size:clamp(22px,2.4vw,28px);line-height:1.55;margin-bottom:22px;position:relative}
.feat-main h3{font-size:16px;font-weight:500;color:#D6DAEF;margin-bottom:12px;position:relative}
.feat-main p{font-size:14.5px;color:#B9BEDB;margin-bottom:24px;position:relative}
.feat-main .link{color:var(--copper-soft);position:relative}
.feat-list{display:flex;flex-direction:column}
.story-row{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;padding:22px 0;border-bottom:1px solid var(--line)}
.story-row:first-child{padding-top:0}
.story-row .no{font-family:var(--serif);font-size:15px;color:var(--copper-d);grid-row:span 2;padding-top:3px;min-width:2.4em}
.story-row h4{font-family:var(--serif);font-size:18px;line-height:1.55;color:var(--navy);font-weight:600}
.story-row:hover h4{color:var(--copper-d)}
.story-row span{font-size:13px;color:var(--muted)}
@media (max-width:900px){.feat{grid-template-columns:1fr;gap:36px}.feat-main{padding:32px 26px}}

/* topic covers */
.covers{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.cover{display:block}
.cover .img{border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--mist-2);margin-bottom:12px}
.cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.cover:hover img{transform:scale(1.04)}
.cover .c{font-size:12.5px;color:var(--copper-d)}
.cover h4{font-family:var(--serif);font-size:16px;line-height:1.55;color:var(--navy);margin-top:4px}
@media (max-width:1000px){.covers{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.covers{grid-template-columns:1fr 1fr;gap:14px}.cover h4{font-size:15px}}

/* activities (home) */
.acts{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}
.act{display:block}
.act .img{border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;margin-bottom:16px;background:var(--mist-2)}
.act:first-child .img{aspect-ratio:auto;height:calc(100% - 140px);min-height:240px}
.act img{width:100%;height:100%;object-fit:cover}
.act time{font-size:13px;color:var(--copper-d)}
.act h4{font-family:var(--serif);font-size:18px;color:var(--navy);line-height:1.5;margin:4px 0 6px}
.act p{font-size:14px;color:var(--muted)}
@media (max-width:900px){.acts{grid-template-columns:1fr}.act:first-child .img{height:auto;aspect-ratio:4/3}}

/* CTA band / clinic hours */
.cta{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:var(--copper);left:-300px;bottom:-280px}
.cta .wrap{position:relative;display:grid;grid-template-columns:1fr 1.1fr;gap:56px;padding-top:88px;padding-bottom:88px;align-items:center}
.cta h2{font-family:var(--serif);font-size:clamp(28px,3.4vw,40px);line-height:1.35;margin-bottom:16px}
.cta p{color:#fff;opacity:.9;max-width:24em}
.hours{background:#fff;color:var(--ink);border-radius:var(--r-lg);padding:10px 30px}
.hours li{list-style:none;display:grid;grid-template-columns:1fr auto;gap:4px 18px;padding:18px 0;border-bottom:1px solid var(--mist-2)}
.hours li:last-child{border-bottom:0}
.hours b{font-weight:600;color:var(--navy);font-size:16px}
.hours small{display:block;color:var(--muted);font-size:13px;font-weight:400}
.hours em{font-style:normal;color:var(--copper-d);font-weight:600;align-self:center;white-space:nowrap}
@media (max-width:860px){.cta .wrap{grid-template-columns:1fr;gap:32px;padding-top:64px;padding-bottom:64px}.hours{padding:6px 20px}}

/* ---------- footer ---------- */
.ftr{background:var(--navy-3);color:#B9BEDB;font-size:14px}
.ftr .wrap{padding-top:64px;padding-bottom:28px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}
.ftr .brand-name{color:#fff}
.ftr .brand-sub{color:var(--muted-2)}
.ftr h5{font-size:14px;color:#fff;font-weight:600;margin-bottom:14px}
.ftr ul{list-style:none}
.ftr li{padding:4px 0}
.ftr a:hover{color:#fff}
.ftr-motto{font-family:var(--serif);font-size:16px;color:#D6DAEF;margin-top:20px;max-width:16em;line-height:1.7}
.ftr-legal{padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12.5px;color:var(--muted-2)}
@media (max-width:860px){.ftr-grid{grid-template-columns:1fr 1fr}.ftr-grid>div:first-child{grid-column:1/-1}}

/* ---------- page header (inner pages) ---------- */
.ph{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.ph::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-120px;bottom:-240px;background:var(--copper)}
.ph.teal{background:var(--teal)}
.ph.teal::after{background:var(--teal-2)}
.ph .wrap{position:relative;z-index:1;padding-top:64px;padding-bottom:64px}
.crumb{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:22px}
.crumb a:hover{color:#fff}
.ph h1{font-family:var(--serif);font-size:clamp(34px,4.6vw,54px);line-height:1.2;margin-bottom:8px}
.ph .en{font-family:Georgia,serif;font-style:italic;color:rgba(255,255,255,.6);font-size:16px;margin-bottom:22px}
.ph p.lead{font-family:var(--serif);font-size:19px;max-width:32em;color:rgba(255,255,255,.9);line-height:1.75}

/* module nav */
.modnav{position:sticky;top:72px;z-index:40;background:#fff;border-bottom:1px solid var(--line)}
.modnav .wrap{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.modnav .wrap::-webkit-scrollbar{display:none}
.modnav a{flex-shrink:0;padding:18px 18px 16px;font-size:15.5px;color:var(--muted);border-bottom:3px solid transparent;display:flex;gap:10px;align-items:baseline}
.modnav a b{font-family:var(--serif);color:var(--copper-d);font-weight:600}
.modnav a.on,.modnav a:hover{color:var(--navy);border-bottom-color:var(--copper)}
.teal-page .modnav a b{color:var(--teal-2)}
.teal-page .modnav a.on,.teal-page .modnav a:hover{border-bottom-color:var(--teal-2)}

/* module */
.mod{padding:88px 0;scroll-margin-top:130px}
.mod+.mod{border-top:1px solid var(--line)}
.mod.alt{background:var(--mist)}
.mod-head{display:grid;grid-template-columns:200px 1fr;gap:40px;margin-bottom:48px}
.mod-step{font-family:var(--serif);font-size:15px;color:var(--copper-d)}
.mod-step b{display:block;font-size:64px;line-height:1;color:var(--navy);font-weight:700;margin-bottom:6px}
.teal-page .mod-step{color:var(--teal-2)}
.teal-page .mod-step b{color:var(--teal)}
.mod-head h2{font-family:var(--serif);font-size:clamp(28px,3.4vw,40px);color:var(--navy);line-height:1.3;margin-bottom:16px}
.teal-page .mod-head h2{color:var(--teal)}
.mod-head .lead{font-family:var(--serif);font-size:20px;line-height:1.75;color:var(--ink);max-width:32em}
.mod-body{margin-left:240px}
@media (max-width:900px){.mod{padding:60px 0}.mod-head{grid-template-columns:1fr;gap:12px;margin-bottom:32px}.mod-step b{font-size:44px}.mod-body{margin-left:0}}

/* knowledge blocks */
.kb{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.kb-item{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px 30px 26px}
.mod.alt .kb-item{border-color:#fff}
.kb-item.wide{grid-column:1/-1}
.kb-item h3{font-family:var(--serif);font-size:21px;line-height:1.5;color:var(--navy);margin-bottom:12px}
.teal-page .kb-item h3{color:var(--teal)}
.kb-item p{font-size:15.5px;color:#3A3D5C;line-height:1.85}
.kb-item p+p{margin-top:10px}
.kb-quote{margin-top:16px;padding:12px 16px;background:var(--cream);border-left:3px solid var(--copper);font-family:var(--serif);color:var(--navy);font-size:16px;line-height:1.7;border-radius:0 var(--r-sm) var(--r-sm) 0}
.teal-page .kb-quote{background:#E9F5F5;border-left-color:var(--teal-2);color:var(--teal)}
.kb-src{margin-top:14px;font-size:13px;color:var(--muted)}
.kb-src a{color:var(--copper-d);border-bottom:1px solid currentColor}
.teal-page .kb-src a{color:var(--teal-2)}
@media (max-width:760px){.kb{grid-template-columns:1fr}.kb-item{padding:24px 20px}}

/* criteria / steps list inside block */
.crit{list-style:none;margin-top:14px;counter-reset:c}
.crit li{position:relative;padding:10px 0 10px 44px;border-top:1px solid var(--mist-2);font-size:15.5px;color:#3A3D5C}
.crit li::before{counter-increment:c;content:counter(c);position:absolute;left:0;top:10px;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-size:13px;display:grid;place-items:center;font-family:var(--serif)}
.teal-page .crit li::before{background:var(--teal)}
.crit li b{color:var(--navy)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{font-size:14px;padding:6px 14px;border-radius:999px;background:var(--mist);color:var(--navy)}
.chip.c{background:var(--copper-soft);color:#7A4316}
.chip.t{background:var(--copper-soft);color:#7A4316}

/* combo diagram (ADHD treatment) */
.combo{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:18px;border-radius:var(--r);overflow:hidden}
.combo div{padding:18px 16px;color:#fff;font-size:15px;text-align:center;font-weight:500}
.combo div small{display:block;font-size:12.5px;opacity:.8;font-weight:400;margin-top:2px}
@media (max-width:600px){.combo{grid-template-columns:1fr 1fr}}

/* ecology map (school refusal) */
.eco{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:36px 34px;position:relative;overflow:hidden}
.eco h3{font-family:var(--serif);font-size:24px;margin-bottom:6px}
.eco>p{color:rgba(255,255,255,.75);font-size:14.5px;margin-bottom:26px}
.eco-axes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.axis{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--r);padding:20px 20px 18px}
.axis h4{font-size:15px;color:var(--copper-soft);font-weight:600;margin-bottom:12px}
.axis ol{list-style:none}
.axis li{padding:7px 0;border-top:1px solid rgba(255,255,255,.12);font-size:15px}
.axis.seq li{display:flex;gap:10px;align-items:center}
.axis.seq li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--copper);flex-shrink:0}
.eco-x{display:grid;place-items:center;font-size:22px;color:var(--copper-soft)}
.eco-foot{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-family:var(--serif);font-size:18px;line-height:1.7}
@media (max-width:800px){.eco-axes{grid-template-columns:1fr}.eco{padding:28px 20px}}

/* stage line */
.stages{display:grid;grid-template-columns:repeat(5,1fr);margin-top:18px;position:relative}
.stages::before{content:"";position:absolute;left:10%;right:10%;top:15px;height:2px;background:var(--line)}
.stages div{text-align:center;position:relative;font-size:15px;color:var(--navy);font-weight:500}
.stages div::before{content:"";display:block;width:32px;height:32px;border-radius:50%;margin:0 auto 10px;background:#fff;border:2px solid var(--copper)}
.stages div:last-child::before{background:var(--copper)}
@media (max-width:560px){.stages{grid-template-columns:1fr;gap:6px}.stages::before{left:15px;right:auto;top:10px;bottom:10px;width:2px;height:auto}.stages div{display:flex;align-items:center;gap:14px;text-align:left}.stages div::before{margin:0;flex-shrink:0}}

/* compare (忍受 vs 接受) */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:16px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.vs div{padding:20px 22px}
.vs div:first-child{background:var(--mist)}
.vs div:last-child{background:var(--cream)}
.vs b{display:block;font-family:var(--serif);font-size:18px;margin-bottom:6px;color:var(--navy)}
.vs div:last-child b{color:var(--copper-d)}
.vs p{font-size:15px}
@media (max-width:560px){.vs{grid-template-columns:1fr}}

/* related articles */
.related{margin-top:48px}
.related h3{font-family:var(--serif);font-size:20px;color:var(--navy);margin-bottom:8px}
.rel-list{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.rel-list a{display:block;padding:16px 0;border-bottom:1px solid var(--line)}
.rel-list a span{font-size:12.5px;color:var(--copper-d)}
.teal-page .rel-list a span{color:var(--teal-2)}
.rel-list a h4{font-family:var(--serif);font-size:16.5px;color:var(--navy);line-height:1.55;font-weight:600}
.rel-list a:hover h4{color:var(--copper-d)}
@media (max-width:700px){.rel-list{grid-template-columns:1fr}}

/* ---------- about ---------- */
.about-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.about-photo{border-radius:var(--r-lg);overflow:hidden;background:var(--mist);position:sticky;top:100px}
.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 15%}
.about-photo figcaption{background:var(--navy);color:#fff;padding:18px 22px}
.about-photo figcaption b{font-family:var(--serif);font-size:22px;display:block}
.about-photo figcaption span{font-size:13.5px;color:#B9BEDB}
.about-text .big{font-family:var(--serif);font-size:clamp(22px,2.4vw,28px);line-height:1.65;color:var(--navy);margin-bottom:28px}
.about-text>p{font-size:16.5px;color:#3A3D5C;line-height:1.95}
.about-block{margin-top:44px}
.about-block h3{font-family:var(--serif);font-size:22px;color:var(--navy);padding-bottom:12px;border-bottom:2px solid var(--navy);margin-bottom:6px}
.plain{list-style:none}
.plain li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15.5px;display:flex;gap:14px}
.plain li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--copper);margin-top:11px;flex-shrink:0}
@media (max-width:860px){.about-intro{grid-template-columns:1fr;gap:36px}.about-photo{position:static;max-width:420px}}

/* ---------- stories ---------- */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.tab{border:1px solid var(--line);background:#fff;padding:9px 18px;border-radius:999px;font-size:14.5px;color:var(--ink);cursor:pointer;font-family:inherit}
.tab span{color:var(--muted-2);margin-left:6px;font-size:12.5px}
.tab:hover{border-color:var(--navy)}
.tab[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.tab[aria-pressed=true] span{color:var(--copper-soft)}
.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px}
.story{display:grid;grid-template-columns:56px 1fr;gap:4px 18px;padding:28px 0;border-top:1px solid var(--line)}
.story[hidden]{display:none}
.story .no{font-family:var(--serif);font-size:28px;color:var(--copper);line-height:1.2;grid-row:span 3}
.story .cat{font-size:13px;color:var(--muted)}
.story h3{font-family:var(--serif);font-size:19px;line-height:1.55;color:var(--navy)}
.story:hover h3{color:var(--copper-d)}
.story p{font-size:14.5px;color:var(--muted);line-height:1.8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px}
.series{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:40px;display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:64px;position:relative;overflow:hidden}
.series::after{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:var(--copper);right:-70px;top:-90px}
.series h2{font-family:var(--serif);font-size:28px;line-height:1.4;margin-bottom:10px}
.series>div>p{color:#B9BEDB;font-size:15px}
.series ol{list-style:none;position:relative;z-index:1}
.series li a{display:grid;grid-template-columns:70px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15)}
.series li a span{color:var(--copper-soft);font-size:14px;padding-top:2px}
.series li a b{font-family:var(--serif);font-weight:500;font-size:17px}
.series li a:hover b{color:var(--copper-soft)}
@media (max-width:860px){.story-grid{grid-template-columns:1fr}.series{grid-template-columns:1fr;padding:30px 22px;gap:20px}}

/* ---------- news ---------- */
.year{display:grid;grid-template-columns:160px 1fr;gap:40px;padding:48px 0;border-top:2px solid var(--navy)}
.year:first-of-type{border-top:0;padding-top:0}
.year>h2{font-family:var(--serif);font-size:48px;color:var(--navy);line-height:1;position:sticky;top:100px;align-self:start}
.event{display:grid;grid-template-columns:1fr 340px;gap:32px;padding:32px 0;border-bottom:1px solid var(--line)}
.event:first-child{padding-top:0}
.event:last-child{border-bottom:0}
.event time{font-size:14px;color:var(--copper-d);font-weight:500}
.event h3{font-family:var(--serif);font-size:21px;color:var(--navy);line-height:1.45;margin:4px 0 2px}
.event .sub{font-size:14px;color:var(--muted)}
.event .theme{font-family:var(--serif);font-size:17px;color:var(--ink);margin:14px 0 8px;font-weight:600}
.event ul{list-style:none}
.event li{font-size:15px;color:#3A3D5C;padding:5px 0 5px 18px;position:relative}
.event li::before{content:"";position:absolute;left:0;top:15px;width:6px;height:6px;border-radius:50%;background:var(--copper)}
.event .kb-quote{margin-top:14px}
.event .src{font-size:12.5px;color:var(--muted-2);margin-top:12px}
.event .pic{border-radius:var(--r);overflow:hidden;align-self:start;background:var(--mist)}
.event .pic img{width:100%;aspect-ratio:4/3;object-fit:cover}
.press{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.press a{background:#fff;border-radius:var(--r);padding:26px 26px 22px;border:1px solid #fff;display:flex;flex-direction:column;gap:8px}
.press a:hover{border-color:var(--copper)}
.press .org{font-size:13px;color:var(--copper-d);font-weight:600}
.press .org span{color:var(--muted-2);font-weight:400;margin-left:10px}
.press h3{font-family:var(--serif);font-size:18px;color:var(--navy);line-height:1.5}
.press p{font-size:14.5px;color:var(--muted)}
.press .go{margin-top:auto;font-size:13.5px;color:var(--copper-d)}
@media (max-width:900px){.year{grid-template-columns:1fr;gap:20px;padding:36px 0}.year>h2{position:static;font-size:38px}.event{grid-template-columns:1fr;gap:16px}.event .pic{order:-1}.press{grid-template-columns:1fr}}

/* ---------- faq ---------- */
.faq-tools{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:28px}
.search{flex:1 1 280px;position:relative}
.search input{width:100%;padding:14px 18px 14px 44px;border:1.5px solid var(--line);border-radius:999px;font-size:16px;font-family:inherit;color:var(--ink);background:#fff}
.search input:focus{outline:none;border-color:var(--navy)}
.search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted-2)}
.faq-layout{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start}
.faq-cats{position:sticky;top:96px;display:flex;flex-direction:column;gap:2px}
.faq-cats button{text-align:left;background:none;border:0;padding:10px 14px;border-radius:8px;font-size:15px;color:var(--ink);cursor:pointer;font-family:inherit;display:flex;justify-content:space-between}
.faq-cats button span{color:var(--muted-2);font-size:13px}
.faq-cats button:hover{background:var(--mist)}
.faq-cats button[aria-pressed=true]{background:var(--navy);color:#fff}
.faq-cats button[aria-pressed=true] span{color:var(--copper-soft)}
.faq-group{margin-bottom:44px}
.faq-group[hidden]{display:none}
.faq-group>h2{font-family:var(--serif);font-size:24px;color:var(--navy);margin-bottom:6px}
.faq-group>p{color:var(--muted);font-size:14.5px;margin-bottom:14px}
details.qa{border-bottom:1px solid var(--line)}
details.qa[hidden]{display:none}
details.qa summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;position:relative;font-size:17px;font-weight:500;color:var(--navy);line-height:1.6}
details.qa summary::-webkit-details-marker{display:none}
details.qa summary::after{content:"";position:absolute;right:8px;top:28px;width:10px;height:10px;border-right:2px solid var(--copper);border-bottom:2px solid var(--copper);transform:rotate(45deg);transition:transform .2s}
details.qa[open] summary::after{transform:rotate(-135deg);top:32px}
details.qa summary:hover{color:var(--copper-d)}
.qa-a{padding:0 0 24px}
.qa-a>p{font-size:15.5px;color:#3A3D5C;line-height:1.9}
.qa-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.qa-meta .chip{font-size:12.5px;padding:4px 11px}
.qa-meta a{font-size:13px;color:var(--copper-d);border-bottom:1px solid currentColor;margin-left:auto}
.faq-empty{padding:40px 0;color:var(--muted)}
@media (max-width:860px){.faq-layout{grid-template-columns:1fr;gap:20px}.faq-cats{position:static;flex-direction:row;overflow-x:auto;gap:6px;scrollbar-width:none}.faq-cats button{flex-shrink:0;border:1px solid var(--line);border-radius:999px;padding:8px 14px;gap:6px}}

/* ---------- article ---------- */
.ah{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.ah::after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:var(--copper);right:-110px;bottom:-170px}
.ah .wrap{max-width:820px;position:relative;z-index:1;padding-top:56px;padding-bottom:56px}
.ah .meta{font-size:14px;color:var(--copper-soft);margin-bottom:16px}
.ah h1{font-family:var(--serif);font-size:clamp(26px,3.6vw,38px);line-height:1.45}
.prose{max-width:720px;margin:0 auto;padding:56px 24px 40px}
.prose p{font-size:17.5px;line-height:2;color:#2B2E4A;margin-bottom:1.05em;font-family:var(--serif)}
.prose h2{font-family:var(--serif);font-size:22px;color:var(--navy);margin:2.2em 0 .9em;padding-left:14px;border-left:3px solid var(--copper);line-height:1.5}
.prose h2:first-child{margin-top:0}
.prose .sign{font-family:var(--sans);font-size:14px;color:var(--muted);margin-top:2.4em;padding-top:1.4em;border-top:1px solid var(--line)}
.prose .note{font-family:var(--sans);font-size:13px;color:var(--muted-2);line-height:1.8;background:var(--mist);padding:14px 18px;border-radius:var(--r-sm)}
.prose .kicker{font-family:var(--sans);font-size:13.5px;letter-spacing:.06em;color:var(--copper-d);margin-bottom:2.2em}
.prose figure{margin:26px 0 30px}
.prose figure img{display:block;width:100%;border-radius:var(--r-sm);background:var(--mist-2)}
.prose figcaption{font-family:var(--sans);font-size:13px;line-height:1.7;color:var(--muted-2);margin-top:10px;text-align:center}
.art-nav{max-width:720px;margin:0 auto;padding:0 24px 80px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.art-nav a{border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;display:block}
.art-nav a:hover{border-color:var(--copper)}
.art-nav span{font-size:12.5px;color:var(--muted)}
.art-nav b{display:block;font-family:var(--serif);font-weight:600;color:var(--navy);font-size:15.5px;line-height:1.5;margin-top:4px}
.art-nav .next{text-align:right}
.art-back{max-width:720px;margin:0 auto;padding:0 24px 72px;text-align:center}
@media (max-width:600px){.art-nav{grid-template-columns:1fr}.art-nav .next{text-align:left}.prose p{font-size:17px}}
@media (max-width:700px){
  .focus-card::after{width:150px;height:150px;right:-70px;top:-70px}
  .feat-main::before{width:100px;height:100px;right:-46px;top:-46px}
}
@media (max-width:700px){
  .ph::after,.ah::after{width:180px;height:180px;right:-90px;bottom:-110px}
  .ph .wrap,.ah .wrap{padding-top:44px;padding-bottom:48px}
}

/* ---------- 四型厌学 ---------- */
.types-wrap{margin-top:56px}
.types-head h3{font-family:var(--serif);font-size:26px;color:var(--navy);line-height:1.4;margin-bottom:8px}
.types-head p{color:var(--muted);font-size:15.5px;max-width:40em;margin-bottom:24px}
.types{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.type{background:#fff;border:1px solid var(--line);border-top:5px solid var(--tc);border-radius:var(--r);padding:26px 26px 18px}
.type header{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}
.type-no{width:40px;height:40px;border-radius:50%;background:var(--tc);color:#fff;font-family:var(--serif);font-size:19px;display:grid;place-items:center;flex-shrink:0}
.type-need{font-size:13px;color:var(--muted)}
.type h3{font-family:var(--serif);font-size:20px;color:var(--ink);line-height:1.4}
.type-drive{display:inline-block;margin-top:6px;font-size:12.5px;padding:2px 10px;border-radius:999px;color:var(--tc);border:1px solid var(--tc)}
.type dt{font-size:13.5px;font-weight:600;color:var(--tc);margin-top:12px}
.type dd{font-size:15px;color:#3A3D5C;line-height:1.8;margin-top:3px}
.type details{margin-top:14px;border-top:1px solid var(--mist-2)}
.type summary{cursor:pointer;padding:12px 0 6px;font-size:14px;color:var(--ink);font-weight:500;list-style:none;display:flex;justify-content:space-between}
.type summary::-webkit-details-marker{display:none}
.type summary::after{content:"展开";font-weight:400;font-size:13px;color:var(--tc)}
.type details[open] summary::after{content:"收起"}
.def{margin-top:24px;background:var(--mist);border-radius:var(--r);padding:26px 28px}
.def h4{font-family:var(--serif);font-size:19px;color:var(--navy);margin-bottom:10px}
.def p{font-size:15px;color:#3A3D5C;line-height:1.85}
.def p+p{margin-top:10px}
@media (max-width:760px){.types{grid-template-columns:1fr}.type{padding:22px 20px 14px}.def{padding:22px 20px}}

/* ---------- 案例 K ---------- */
.case{margin-top:32px;background:#fff;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line)}
.case-top{background:var(--navy);color:#fff;padding:30px 32px 26px;position:relative;overflow:hidden}
.case-top::after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:var(--copper);right:-50px;top:-70px}
.case-tag{font-size:13.5px;color:var(--copper-soft);margin-bottom:6px;position:relative}
.case-top h3{font-family:var(--serif);font-size:25px;line-height:1.4;position:relative;max-width:20em}
.case-note{font-size:12.5px;color:var(--muted-2);margin-top:8px;position:relative}
.case h4{font-family:var(--serif);font-size:18px;color:var(--navy);margin-bottom:12px}
.case-grid{display:grid;grid-template-columns:1fr 1fr}
.case-col{padding:28px 32px}
.case-col+.case-col{border-left:1px solid var(--line)}
.case-col ul{list-style:none}
.case-col li{font-size:15px;color:#3A3D5C;padding:7px 0 7px 18px;position:relative;line-height:1.75}
.case-col li::before{content:"";position:absolute;left:0;top:17px;width:6px;height:6px;border-radius:50%;background:var(--copper)}
.needs{display:grid;grid-template-columns:auto 1fr;gap:10px 14px}
.needs dt{font-size:13px;color:#fff;background:var(--nc);border-radius:999px;padding:3px 12px;align-self:start;margin-top:2px;white-space:nowrap}
.needs dd{font-size:15px;color:#3A3D5C;line-height:1.75}
.case-map{padding:28px 32px;border-top:1px solid var(--line);background:var(--cream)}
.case-map>p{font-size:15px;color:#3A3D5C;line-height:1.85;max-width:52em}
.path{list-style:none;display:flex;flex-wrap:wrap;gap:8px 0;margin-top:18px;counter-reset:p}
.path li{font-size:14px;color:var(--navy);background:#fff;border:1px solid var(--copper-soft);padding:7px 14px;border-radius:999px;display:flex;align-items:center}
.path li:not(:last-child)::after{content:"";width:18px;height:1.5px;background:var(--copper);margin:0 -32px 0 14px;position:relative;right:-1px}
.path li:not(:last-child){margin-right:22px}
.path li:last-child{background:var(--copper);color:#fff;border-color:var(--copper)}
.case-do{padding:28px 32px 30px;border-top:1px solid var(--line)}
.do-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.do-grid div{background:var(--mist);border-radius:var(--r);padding:18px 18px 16px}
.do-grid b{font-family:var(--serif);font-size:17px;color:var(--navy)}
.do-grid p{font-size:14.5px;color:#3A3D5C;line-height:1.8;margin-top:6px}
.case-warn{margin-top:18px;font-size:15px;color:var(--navy);line-height:1.8;padding:14px 18px;border-left:3px solid var(--copper);background:var(--cream);border-radius:0 var(--r-sm) var(--r-sm) 0}
@media (max-width:860px){
  .case-grid,.do-grid{grid-template-columns:1fr}
  .case-col+.case-col{border-left:0;border-top:1px solid var(--line)}
  .case-col,.case-map,.case-do{padding:22px 20px}.case-top{padding:24px 20px}
  .path{flex-direction:column;align-items:flex-start;gap:0}
  .path li{margin:0!important}
  .path li:not(:last-child)::after{display:none}
  .path li:not(:last-child){margin-bottom:18px!important;position:relative}
  .path li:not(:last-child)::before{content:"";position:absolute;left:24px;bottom:-18px;width:1.5px;height:18px;background:var(--copper)}
}
@media (max-width:700px){.case-top::after{width:90px;height:90px;right:-40px;top:-40px}}

/* ---------- 五个阶段 ---------- */
.phases{list-style:none;margin-top:18px;display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}
.phases::before{content:"";position:absolute;left:0;right:0;top:15px;height:2px;background:linear-gradient(90deg,var(--copper-soft),var(--copper))}
.phases li{position:relative;padding:44px 14px 0 0}
.phases li::before{content:"";position:absolute;left:0;top:6px;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--copper)}
.phases li:last-child::before{background:var(--copper)}
.ph-name b{display:block;font-family:var(--serif);font-size:17px;color:var(--navy);line-height:1.4}
.ph-name span{display:block;font-size:12.5px;color:var(--copper-d);margin:3px 0 8px}
.phases p{font-size:14px!important;line-height:1.75!important;color:#3A3D5C}
.phases .ph-key{margin-top:8px!important;padding-top:8px;border-top:1px dashed var(--line)}
.ph-key em{font-style:normal;font-size:12px;color:#fff;background:var(--copper);border-radius:4px;padding:1px 6px;margin-right:6px}
@media (max-width:900px){
  .phases{grid-template-columns:1fr}
  .phases::before{left:9px;right:auto;top:8px;bottom:8px;width:2px;height:auto;background:linear-gradient(180deg,var(--copper-soft),var(--copper))}
  .phases li{padding:0 0 22px 36px}
  .phases li::before{top:2px}
}

/* 模块导航：椭圆标签、居中 */
.modnav .wrap{justify-content:center;gap:12px;padding-top:14px;padding-bottom:14px}
.modnav a{padding:10px 22px;border:1.5px solid var(--line);border-radius:999px;border-bottom-width:1.5px;background:#fff;transition:background .2s,border-color .2s,color .2s}
.modnav a:hover{border-color:var(--navy);color:var(--navy);border-bottom-color:var(--navy)}
.modnav a.on{background:var(--navy);border-color:var(--navy);color:#fff}
.modnav a.on b{color:var(--copper-soft)}
@media (max-width:700px){.modnav .wrap{justify-content:flex-start;gap:8px;padding-top:10px;padding-bottom:10px}.modnav a{padding:8px 16px;font-size:14.5px}}
.ftr-legal .beian{color:var(--muted-2);flex-basis:100%;text-align:center;padding-top:6px}
.ftr-legal .beian:hover{color:#fff;text-decoration:underline}

/* ---------- 门诊预约页 ---------- */
.clinic-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.loc{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column}
.loc-head{background:var(--navy);color:#fff;padding:26px 28px 22px;position:relative;overflow:hidden}
.loc-head::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:var(--copper);right:-44px;top:-52px}
.loc-head h3{font-family:var(--serif);font-size:22px;line-height:1.4;position:relative;max-width:16em}
.loc-head p{font-size:13.5px;color:#B9BEDB;margin-top:4px;position:relative}
.slots{list-style:none;padding:8px 28px}
.slots li{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:16px 0;border-bottom:1px solid var(--mist-2)}
.slots li:last-child{border-bottom:0}
.slots b{font-size:16.5px;color:var(--navy);font-weight:600}
.slots em{font-style:normal;color:var(--copper-d);font-weight:600;font-size:16px;text-align:right;white-space:nowrap}
.slots span{grid-column:1/-1;font-size:14px;color:var(--muted)}
.loc-foot{margin-top:auto;background:var(--mist);padding:20px 28px 22px;display:grid;gap:12px}
.loc-row{display:grid;grid-template-columns:64px 1fr;gap:12px;font-size:15px;color:#3A3D5C;line-height:1.7}
.loc-row dt{color:var(--muted);font-size:14px}
.tel{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--navy);letter-spacing:.02em}
.tel:hover{color:var(--copper-d)}
.online{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.qr-card{background:#fff;border-radius:var(--r-lg);padding:30px;display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;border:1px solid #fff}
.qr-card img{width:180px;height:180px;object-fit:contain;border-radius:var(--r-sm);border:1px solid var(--mist-2);background:#fff}
.qr-card .plat{font-size:13px;color:var(--copper-d);font-weight:600}
.qr-card h3{font-family:var(--serif);font-size:21px;color:var(--navy);line-height:1.45;margin:4px 0 8px}
.qr-card p{font-size:14.5px;color:#3A3D5C;line-height:1.8}
.qr-card .org{font-size:13px;color:var(--muted);margin-top:8px}
.qr-card .btn{margin-top:14px;padding:9px 18px;font-size:14px}
.qr-mobile{display:none}
.tips{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--navy)}
.tip{padding:26px 26px 6px 0}
.tip+.tip{padding-left:26px;border-left:1px solid var(--line)}
.tip h3{font-family:var(--serif);font-size:19px;color:var(--navy);margin-bottom:8px}
.tip p{font-size:15px;color:var(--muted);line-height:1.8}
.clinic-note{margin-top:28px;font-size:13.5px;color:var(--muted-2)}
.cta-link{display:inline-block;margin-top:22px}
@media (max-width:960px){.online{grid-template-columns:1fr}}
@media (max-width:860px){.clinic-grid{grid-template-columns:1fr}.tips{grid-template-columns:1fr}.tip,.tip+.tip{padding:20px 0;border-left:0;border-top:1px solid var(--line)}.tip:first-child{border-top:0}}
@media (max-width:600px){
  .qr-card{grid-template-columns:1fr;justify-items:center;text-align:center;padding:26px 20px}
  .qr-card img{width:200px;height:200px}
  .qr-mobile{display:inline-flex}
  .slots,.loc-foot{padding-left:20px;padding-right:20px}.loc-head{padding:22px 20px 18px}
}
@media (max-width:600px){.loc-head::after{width:64px;height:64px;right:-26px;top:-30px}.loc-head h3{padding-right:30px;font-size:20px}}

/* 线上平台三张卡片 */
.online{grid-template-columns:repeat(3,1fr)}
.qr-card{grid-template-columns:1fr;justify-items:center;text-align:center;padding:30px 26px}
.qr-card img{width:190px;height:190px}
@media (max-width:960px){.online{grid-template-columns:1fr}.qr-card{grid-template-columns:190px 1fr;justify-items:start;text-align:left}}
@media (max-width:600px){.qr-card{grid-template-columns:1fr;justify-items:center;text-align:center}}

/* 线上联系：分组 */
.online-h{font-family:var(--serif);font-size:21px;color:var(--navy);margin:0 0 18px;padding-left:14px;border-left:3px solid var(--copper);line-height:1.4}
.online.two+.online-h{margin-top:44px}
.online.two{grid-template-columns:1fr 1fr}
.online.two .qr-card{grid-template-columns:180px 1fr;justify-items:start;text-align:left}
.online.two .qr-card img{width:180px;height:180px}
@media (max-width:960px){.online.two{grid-template-columns:1fr}}
@media (max-width:600px){.online.two .qr-card{grid-template-columns:1fr;justify-items:center;text-align:center}.online.two .qr-card img{width:200px;height:200px}}
/* 页脚：关注叶敏捷心理 */
.ftr-follow-t{margin-top:22px;font-size:13.5px;color:#D6DAEF}
.ftr-follow{display:flex;gap:14px;margin-top:12px}
.ftr-follow figure{text-align:center}
.ftr-follow img{width:92px;height:92px;border-radius:8px;background:#fff;padding:4px}
.ftr-follow figcaption{font-size:12.5px;color:var(--muted-2);margin-top:6px}

/* 四种心理营养 */
.pillars.four{grid-template-columns:repeat(4,1fr)}
.pillars.four .pillar{padding-right:24px}
.pillars.four .pillar+.pillar{padding-left:24px}
@media (max-width:1000px) and (min-width:801px){.pillars.four{grid-template-columns:repeat(2,1fr)}.pillars.four .pillar:nth-child(3){border-left:0;padding-left:0}.pillars.four .pillar:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:800px){.pillars.four{grid-template-columns:1fr}.pillars.four .pillar,.pillars.four .pillar+.pillar{padding:26px 0;border-left:0}}

/* ---------- 文章页 V4：主图、副标题、金句、要点 ---------- */
.ah-sub{font-family:var(--serif);font-size:18px;color:#D6DAEF;margin-top:14px;line-height:1.7;max-width:34em;position:relative}
.art-hero{max-width:1000px;margin:0 auto;padding:40px 24px 0}
.art-hero img{display:block;width:100%;aspect-ratio:2.33/1;object-fit:cover;border-radius:var(--r)}
.prose .pull{font-family:var(--serif);font-size:19px;line-height:1.75;color:var(--navy);background:var(--cream);border-left:3px solid var(--copper);padding:16px 22px;border-radius:0 var(--r-sm) var(--r-sm) 0;margin:1.6em 0}
.prose .lead-in{margin-top:1.6em;margin-bottom:.5em}
.prose .lead-in strong{color:var(--navy);font-weight:700}
@media (max-width:600px){.art-hero{padding:24px 16px 0}.art-hero img{border-radius:var(--r-sm)}.ah-sub{font-size:16px}.prose .pull{font-size:17px;padding:14px 16px}}

/* ---------- 2026-10 优化：首页困扰入口、首屏说明、预约页提示 ---------- */
.hero-sub{font-size:15.5px;color:#B9BEDD;max-width:32em;margin:-22px 0 34px;line-height:1.85}
.entry-sec{padding-top:56px;padding-bottom:40px}
.entries{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.entries a{display:flex;flex-direction:column;gap:8px;padding:24px 22px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:border-color .2s,transform .2s,box-shadow .2s}
.entries a:hover{border-color:var(--copper);transform:translateY(-2px);box-shadow:0 12px 26px rgba(26,31,77,.07)}
.entries b{font-family:var(--serif);font-size:19px;color:var(--navy);line-height:1.45}
.entries span{font-size:14px;color:var(--muted);line-height:1.75;flex:1}
.entries i{font-style:normal;font-size:13.5px;color:var(--copper-d);margin-top:4px}
@media (max-width:900px){.entries{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.entries{grid-template-columns:1fr}.hero-sub{margin-top:-18px}}
.tips .tip:nth-child(3n+1){padding-left:0;border-left:0}
.tips .tip:nth-child(n+4){border-top:1px solid var(--line);margin-top:6px}
.tip.urgent h3{color:var(--copper-d)}
.tip b{color:var(--navy)}
.note-s{font-size:12.5px;color:var(--muted-2);line-height:1.7;margin-top:6px}
@media (max-width:900px){.tips .tip:nth-child(n){padding-left:0;border-left:0;margin-top:0}}

/* 公众号专题入口 */
.wxt-one{display:flex;gap:26px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg,14px);padding:24px 28px}
.wxt-one img{width:132px;height:132px;flex-shrink:0;border-radius:8px;border:1px solid var(--line);background:#fff}
.wxt-body{min-width:0}
.wxt-tag{font-size:13px;color:var(--copper-d);font-weight:600;letter-spacing:.06em}
.wxt-one h3{font-family:var(--serif);color:var(--navy);font-size:21px;margin:4px 0 6px}
.wxt-tabs{font-size:13.5px;color:var(--copper-d);margin:0 0 6px}
.wxt-body p{font-size:14.5px;color:#3A3D5C;line-height:1.8;margin:0 0 8px}
.wxt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.wxt-card{display:grid;grid-template-columns:96px 1fr;grid-template-rows:auto 1fr;column-gap:16px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;color:inherit;text-decoration:none;min-width:0}
.wxt-card:hover{border-color:var(--copper)}
.wxt-card img{grid-row:1/3;width:96px;height:96px;border-radius:6px}
.wxt-card .wxt-name{font-family:var(--serif);font-size:17px;color:var(--navy);font-weight:700;margin-top:4px}
.wxt-card .wxt-tabs{font-size:13px;color:#5F6380;line-height:1.7;margin:4px 0 0}
@media (max-width:900px){.wxt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.wxt-grid{grid-template-columns:1fr}.wxt-one{flex-direction:column;align-items:flex-start;padding:20px}}


/* 文章库 */
.lib-nav a span{font-size:12.5px;color:var(--copper-d)}
.lib-wrap{display:grid;grid-template-columns:220px 1fr;gap:56px;align-items:start}
.lib-side{position:sticky;top:150px}
.lib-side .qr-card{border:1px solid var(--line);border-radius:var(--r);padding:20px;text-align:center;background:#fff}
.lib-side .qr-card img{width:140px;height:140px;margin:0 auto 10px;display:block}
.lib-side .qr-card p{font-size:13.5px;color:var(--muted);line-height:1.7;margin-bottom:8px}
.lib-side .link{font-size:14px}
.lib-back{margin-top:18px;font-size:14px}
.lib-sec{scroll-margin-top:150px;margin-bottom:56px}
.lib-sec h2{font-family:var(--serif);font-size:26px;color:var(--navy);padding-bottom:14px;border-bottom:2px solid var(--navy);display:flex;align-items:baseline;gap:12px}
.lib-sec h2 span{font-family:inherit;font-size:14px;color:var(--copper-d);font-weight:400}
.lib-row{display:block;padding:18px 0;border-bottom:1px solid var(--line)}
.lib-row time{font-size:13px;color:var(--muted)}
.lib-row h4{font-family:var(--serif);font-size:18px;line-height:1.55;color:var(--navy);font-weight:600;margin:2px 0 4px}
.lib-row:hover h4{color:var(--copper-d)}
.lib-row p{font-size:14.5px;color:var(--muted);line-height:1.75;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lib-row em{font-style:normal;font-size:13px;color:var(--copper-d)}
.lib-row em.lib-site{color:#fff;background:var(--copper);padding:1px 8px;border-radius:999px}
.lib-entries{grid-template-columns:repeat(3,1fr)}
.lib-note{margin-top:24px;font-size:14px;color:var(--muted)}
@media (max-width:900px){.lib-wrap{grid-template-columns:1fr;gap:28px}.lib-side{position:static;order:2}.lib-entries{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.lib-entries{grid-template-columns:1fr}.lib-sec h2{font-size:22px}}
