:root{
  --cream:#FBF7F0;
  --soft:#F5EFE4;
  --teal-deep:#1F6F6A;
  --teal:#2F9B93;
  --teal-light:#5FC0B7;
  --teal-wash:#E9F1EE;
  --amber:#E8A33D;
  --amber-soft:#FAF1DE;
  --ink:#2B3A3E;
  --muted:#6D7B74;
  --line:#E9E1D2;
  --white:#FFFDF9;
  --serif:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi","Noto Serif SC",serif;
  --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;
  --shadow:0 2px 8px rgba(90,74,50,.06);
  --radius:18px;
}
*{margin:0;padding:0;box-sizing:border-box}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:4px}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.container{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}
h1,h2,h3,.serif{font-family:var(--serif)}

/* ===== 顶部导航 ===== */
.nav{position:fixed;inset:0 0 auto 0;z-index:100;background:var(--white);border-bottom:1px solid var(--line)}
.nav.scrolled{box-shadow:0 1px 6px rgba(0,0,0,.05)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;color:var(--teal-deep)}
.brand .logo{width:36px;height:36px;flex:none}
.brand .brand-txt{line-height:1.2}
.brand .brand-sub{display:block;font-family:var(--sans);font-size:11px;color:var(--muted);letter-spacing:.06em}
.nav-links{display:none;gap:30px}
.nav-links a{font-size:15px;font-weight:600;color:var(--ink);padding:6px 0;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--teal-deep)}
.nav-cta{display:none}
.burger{display:flex;flex-direction:column;gap:5px;width:34px;height:34px;justify-content:center;align-items:center;background:none;border:none;cursor:pointer}
.burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:.3s}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;top:64px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:18px 24px;display:flex;flex-direction:column;gap:4px;transform:translateY(-110%);transition:transform .3s;z-index:99}
.mobile-menu.open{transform:translateY(0)}
.mobile-menu a{padding:12px 0;font-size:17px;font-weight:600;border-bottom:1px dashed var(--line)}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu .nav-cta{margin-top:10px}

.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:12px;font-size:15.5px;font-weight:600;cursor:pointer;border:none;transition:background .2s,border-color .2s,color .2s}
.btn-primary{background:var(--teal);color:#fff}
.btn-primary:hover{background:var(--teal-deep)}
.btn-ghost{background:transparent;color:var(--teal-deep);border:1.5px solid rgba(31,111,106,.5)}
.btn-ghost:hover{background:rgba(31,111,106,.06)}

/* ===== Hero ===== */
.hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;background:var(--cream)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,247,240,.94) 0%,rgba(251,247,240,.72) 42%,rgba(251,247,240,.18) 72%,rgba(251,247,240,0) 100%)}
.hero-inner{position:relative;z-index:2;padding:130px 0 90px;max-width:1120px;margin:0 auto;width:100%;padding-left:20px;padding-right:20px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;letter-spacing:.08em;color:var(--teal-deep);margin-bottom:22px}
.hero-eyebrow svg{width:16px;height:16px}
.hero h1{font-size:clamp(2.1rem,6.4vw,3.9rem);font-weight:700;line-height:1.22;color:var(--ink);letter-spacing:.01em}
.hero h1 .hl{color:var(--teal-deep)}
.hero-sub{margin-top:22px;max-width:600px;font-size:clamp(15px,2.2vw,17.5px);color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-stats{display:flex;flex-wrap:wrap;gap:0;margin-top:44px;max-width:640px}
.hero-stat{flex:1 1 150px;padding:12px 18px;border-left:2px solid rgba(31,111,106,.18)}
.hero-stat b{font-family:var(--serif);font-size:26px;color:var(--teal-deep);display:block;line-height:1.2}
.hero-stat span{font-size:13.5px;color:var(--muted)}

/* ===== Hero 星星点缀（呼吸式闪烁） ===== */
.hero-stars{position:absolute;inset:0;z-index:1;pointer-events:none}
.hero-star{position:absolute;color:var(--amber)}
@media (prefers-reduced-motion:no-preference){
  .hero-star{animation:starBreath 8s ease-in-out infinite}
  .hero-star:nth-of-type(2){animation-delay:-1.6s}
  .hero-star:nth-of-type(3){animation-delay:-3.2s}
  .hero-star:nth-of-type(4){animation-delay:-4.8s}
  .hero-star:nth-of-type(5){animation-delay:-6.4s}
}
@keyframes starBreath{0%,100%{opacity:.15;transform:scale(.9)}50%{opacity:.85;transform:scale(1)}}

/* ===== 新闻动态 ===== */
.news{background:var(--cream)}
.news-grid{display:grid;grid-template-columns:1fr;gap:18px;max-width:880px;margin:0 auto}
.ncard{display:block;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px 24px;transition:transform .2s,box-shadow .2s,border-color .2s}
.ncard:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,.07);border-color:rgba(47,155,147,.45)}
.ncard-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.ncard-date{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.ncard-tag{font-size:12px;font-weight:600;color:#8A5B12;background:var(--amber-soft);border-radius:999px;padding:3px 10px}
.ncard h3{font-size:17.5px;font-weight:600;color:var(--ink);line-height:1.45;margin-bottom:8px}
.ncard p{font-size:14px;color:var(--muted);margin-bottom:12px}
.ncard-more{font-size:14px;font-weight:600;color:var(--teal-deep)}
@media(min-width:900px){.news-grid{grid-template-columns:repeat(3,1fr)}}

/* ===== 通用章节 ===== */
.section{padding:clamp(64px,9vw,110px) 0}
.sec-head{max-width:760px;margin:0 auto 54px;text-align:center}
.sec-kicker{display:inline-flex;align-items:center;gap:12px;font-size:13.5px;font-weight:600;letter-spacing:.22em;margin-right:-.22em;color:var(--teal);margin-bottom:14px}
.sec-kicker::before,.sec-kicker::after{content:"";width:24px;height:1px;background:currentColor;opacity:.45}
.sec-title{font-size:clamp(1.7rem,4vw,2.6rem);font-weight:700;line-height:1.25;color:var(--ink)}
.sec-title em{color:var(--teal-deep);font-style:normal}
.sec-desc{margin-top:16px;font-size:16px;color:var(--muted)}

/* ===== 关于 ===== */
.about-grid{display:grid;grid-template-columns:1fr;gap:36px;align-items:center}
.about-media{position:relative}
.about-media img{border-radius:var(--radius);width:100%}
.about-badge{position:absolute;left:-14px;bottom:24px;background:var(--teal-deep);color:#fff;padding:14px 20px;border-radius:14px}
.about-badge b{font-family:var(--serif);font-size:22px;display:block;line-height:1.1}
.about-badge span{font-size:12.5px;opacity:.9}
.about-txt h3{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:600;color:var(--teal-deep);margin-bottom:18px;line-height:1.35}
.about-txt p{color:#4E5A53;margin-bottom:16px}
.about-points{display:grid;grid-template-columns:1fr;gap:14px;margin-top:24px}
.apoint{display:flex;gap:14px;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:16px}
.apoint .ic{flex:none;width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--teal-wash)}
.apoint .ic svg{width:22px;height:22px;stroke:var(--teal-deep)}
.apoint b{font-size:15.5px;color:var(--ink);display:block}
.apoint span{font-size:13.5px;color:var(--muted)}

/* ===== 数字条 ===== */
.numbers{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(34px,5vw,56px) clamp(24px,4vw,48px);margin-top:clamp(40px,6vw,70px)}
.numbers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;text-align:center}
.num b{font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:700;display:block;line-height:1.1;color:var(--ink)}
.num b i{font-style:normal;color:var(--muted);font-size:.55em;font-weight:600}
.num span{font-size:14px;color:var(--muted)}

/* ===== 服务与课程 ===== */
.courses{background:var(--soft)}
.service-row{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:52px}
.svc{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:24px;position:relative;overflow:hidden}
.svc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--teal)}
.svc.alt::before{background:var(--amber)}
.svc b{font-size:18px;color:var(--ink);display:block;margin-bottom:8px}
.svc p{font-size:14.5px;color:var(--muted)}
.course-grid{display:grid;grid-template-columns:1fr;gap:18px}
.course{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:24px}
.course .ic{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--teal-wash);margin-bottom:16px}
.course .ic svg{width:26px;height:26px;stroke:var(--teal-deep)}
.course h4{font-family:var(--serif);font-size:18px;font-weight:600;margin-bottom:8px}
.course p{font-size:14px;color:var(--muted)}

/* ===== 团队 ===== */
.team{background:var(--cream)}
.team-grid{display:grid;grid-template-columns:1fr;gap:18px}
.tcard{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px;text-align:center}
.tcard .ic{width:58px;height:58px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:var(--soft)}
.tcard .ic svg{width:30px;height:30px;stroke:var(--muted)}
.tcard b{font-size:17px;color:var(--ink);display:block}
.tcard span{font-size:13.5px;color:var(--muted);margin-top:6px;display:block}

/* ===== 科普 ===== */
.science .sec-head{max-width:840px}
.science{background:var(--soft)}
.block{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(26px,4vw,44px);margin-bottom:28px}
.block-title{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.block-title .num{flex:none;width:46px;height:46px;border-radius:14px;background:var(--teal-deep);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:19px}
.block-title h3{font-size:clamp(1.25rem,2.6vw,1.65rem);font-weight:700;color:var(--ink)}
.what-wrap{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
.what-wrap p{color:#4E5A53;margin-bottom:14px}
.what-media img{border-radius:14px;width:100%}
.core-features{display:grid;grid-template-columns:1fr;gap:14px;margin-top:6px}
.core{display:flex;gap:14px;align-items:flex-start;background:var(--soft);border-radius:12px;padding:16px}
.core .ic{flex:none;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--teal-wash)}
.core .ic svg{width:21px;height:21px;stroke:var(--teal-deep)}
.core b{font-size:15px;display:block;margin-bottom:4px}
.core span{font-size:13.5px;color:var(--muted)}
.note{font-size:13.5px;color:var(--muted);background:var(--amber-soft);border-left:4px solid var(--amber);padding:12px 16px;border-radius:0 14px 14px 0;margin-top:18px}

/* 五不 */
.wubu{display:grid;grid-template-columns:1fr;gap:14px;margin-top:10px}
.wb{background:var(--soft);border:1px solid rgba(47,155,147,.2);border-radius:14px;padding:20px;position:relative}
.wb .tag{display:inline-block;font-size:13px;font-weight:600;color:var(--teal-deep);background:var(--teal-wash);padding:3px 10px;border-radius:6px;margin-bottom:12px}
.wb b{font-size:16px;display:block;margin-bottom:6px}
.wb p{font-size:13.5px;color:var(--muted)}

/* 误区与真相 静态对照卡 */
.myth-grid{display:grid;grid-template-columns:1fr;gap:16px}
.myth-card{background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.mside{padding:16px 20px}
.mside.myth{background:var(--amber-soft);border-bottom:1px solid var(--line)}
.mside.truth{border-left:3px solid var(--teal-deep)}
.mside .face-tag{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;margin-bottom:6px;color:var(--muted)}
.mside b{font-size:15px;color:var(--ink);line-height:1.5}
.mside.myth b{color:#6B5B4A}
.mside p{font-size:13.5px;color:var(--muted);margin-top:4px;line-height:1.65}

/* FAQ */
.faq-item{border:1px solid var(--line);border-radius:14px;margin-bottom:12px;background:var(--white);overflow:hidden;transition:border-color .3s}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:18px 20px;font-size:15.5px;font-weight:600;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--sans)}
.faq-q .arr{flex:none;width:22px;height:22px;transition:transform .3s;color:var(--teal)}
.faq-item.open .faq-q .arr{transform:rotate(180deg)}
.faq-item.open .faq-q{color:var(--teal-deep)}
.faq-item.open{border-color:var(--amber)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-a p{padding:0 20px 18px;font-size:14.5px;color:#4E5A53;line-height:1.75}

/* 如何看待社会现象 */
.view-wrap{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
.view-media img{border-radius:14px;width:100%}
.view-list{display:grid;grid-template-columns:1fr;gap:14px}
.view-item{display:flex;gap:14px;align-items:flex-start;background:var(--soft);border-radius:14px;padding:16px}
.view-item .no{flex:none;width:32px;height:32px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--muted);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:600;font-size:14px}
.view-item b{font-size:15.5px;display:block;margin-bottom:4px}
.view-item span{font-size:13.5px;color:var(--muted)}

/* ===== 联系我们 ===== */
.contact{background:var(--cream)}
.contact-grid{display:grid;grid-template-columns:1fr;gap:20px}
.contact-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px}
.contact-card .ic{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--teal-wash);margin-bottom:16px}
.contact-card .ic svg{width:25px;height:25px;stroke:var(--teal-deep)}
.contact-card b{font-size:17px;display:block;margin-bottom:8px;color:var(--ink)}
.contact-card p,.contact-card a.ln{font-size:15px;color:var(--muted);line-height:1.7}
.contact-card a.ln{color:var(--teal-deep);font-weight:600;display:inline-block}
a.ln.copyable{cursor:pointer}
.copied-tip{font-size:12px;font-weight:600;color:#1F7A34;margin-left:6px}
.map-empty{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:20px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px}
.map-empty .pin{flex:none;width:52px;height:52px;border-radius:14px;background:var(--teal-wash);display:flex;align-items:center;justify-content:center}
.map-empty .pin svg{width:28px;height:28px;stroke:var(--teal-deep)}
.map-empty .map-info{flex:1;min-width:220px}
.map-empty b{font-size:16px;color:var(--ink);display:block;margin-bottom:4px}
.map-empty span{font-size:14px;color:var(--muted)}
.map-empty .btn svg{width:16px;height:16px;flex:none}
@media (max-width:567px){.map-empty .btn{width:100%;justify-content:center}}

/* ===== CTA 底部 ===== */
.cta{position:relative;overflow:hidden;border-radius:20px;background:var(--teal-deep);color:#fff;padding:clamp(36px,6vw,64px);text-align:center}
.cta h2{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700}
.cta p{margin:16px auto 28px;max-width:520px;color:rgba(255,255,255,.88);font-size:15.5px}
.cta .btn-primary{background:#fff;color:var(--teal-deep)}
.cta .btn-primary:hover{background:var(--amber-soft)}

/* ===== 页脚 ===== */
.footer{background:var(--ink);color:#C7D3D6;padding:54px 0 30px;font-size:14px}
.footer-grid{display:grid;grid-template-columns:1fr;gap:30px;margin-bottom:34px}
.footer h4{font-family:var(--serif);color:#fff;font-size:16px;margin-bottom:14px;font-weight:600}
.footer p,.footer li{color:#A9B9BD;line-height:1.8}
.footer ul{list-style:none}
.footer ul li::before{content:"·";color:var(--teal-light);margin-right:8px}
.footer a{transition:color .2s}
.footer a:hover{color:#fff}
.footer .brand{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;color:#8FA3A8;font-size:12.5px;line-height:1.8}
.back-top{position:fixed;right:20px;bottom:24px;width:46px;height:46px;border-radius:50%;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.15);opacity:0;pointer-events:none;transition:.3s;z-index:90;border:none;cursor:pointer}
.back-top.show{opacity:1;pointer-events:auto}
.back-top svg{width:22px;height:22px}

/* ===== 响应式桌面 ===== */
@media (min-width:768px){
  .nav-links{display:flex}
  .nav-cta{display:inline-flex}
  .burger{display:none}
  .mobile-menu{display:none}
  .about-grid{grid-template-columns:1fr 1.05fr;gap:56px}
  .about-points{grid-template-columns:1fr 1fr}
  .numbers-grid{grid-template-columns:repeat(4,1fr)}
  .service-row{grid-template-columns:repeat(3,1fr)}
  .course-grid{grid-template-columns:repeat(4,1fr)}
  .team-grid{grid-template-columns:repeat(3,1fr)}
  .what-wrap{grid-template-columns:1.05fr 1fr;gap:48px}
  .core-features{grid-template-columns:repeat(2,1fr)}
  .wubu{grid-template-columns:repeat(3,1fr)}
  .myth-grid{grid-template-columns:repeat(3,1fr)}
  .view-wrap{grid-template-columns:1fr 1.05fr;gap:48px}
  .view-list{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px}
}
.footer-links li::before{display:none}
.footer-links a{border-bottom:1px solid rgba(95,192,183,.35);padding-bottom:2px;transition:border-color .2s,color .2s}
.footer-links a:hover{border-color:transparent}
@media (min-width:560px) and (max-width:767px){
  .about-points{grid-template-columns:1fr 1fr}
  .course-grid{grid-template-columns:1fr 1fr}
  .myth-grid{grid-template-columns:1fr 1fr}
  .wubu{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .course,.btn{transition:none}
}
