:root{
  --mint:#ecfdf5;
  --emerald:#10b981;
  --emerald-dark:#059669;
  --deep:#065f46;
  --text:#123a2d;
  --muted:#4d6b61;
  --line:rgba(16,185,129,.16);
  --card:0 10px 30px rgba(16,185,129,.10), 0 0 0 1px rgba(16,185,129,.10);
  --card-hover:0 16px 40px rgba(16,185,129,.18), 0 0 0 1px rgba(16,185,129,.22);
}
*,*::before,*::after{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family: "Segoe UI", "Helvetica Neue", Arial, "Microsoft YaHei", "微软雅黑", "PingFang SC", sans-serif;
}
html{scroll-behavior:smooth;}
body{
  background:linear-gradient(170deg,#ecfdf5 0%,#f6fffb 42%,#ffffff 100%);
  color:var(--text);
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
  font-size:16px;
}
img{max-width:100%;display:block;border-radius:14px;}
a{color:var(--emerald-dark);text-decoration:none;transition:color .2s ease;}
a:hover{color:var(--deep);}
.wrap{width:min(1160px,92%);margin:0 auto;}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;flex-wrap:wrap;}
.logo{font-size:20px;font-weight:700;color:var(--deep);letter-spacing:.5px;}
.logo span{color:var(--emerald);}
.nav-links{display:flex;flex-wrap:wrap;gap:6px;}
.nav-links a{
  padding:7px 14px;border-radius:999px;font-size:15px;color:#2f4f45;font-weight:500;
  background:linear-gradient(180deg,#ffffff,#f2fdf8);
  box-shadow:0 2px 8px rgba(16,185,129,.08);
}
.nav-links a:hover{background:linear-gradient(180deg,#e7fdf2,#d5f9e8);color:var(--deep);}
section{padding:60px 0;}
.kicker{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:1.4px;
  color:var(--emerald-dark);background:#e6fdf3;border-radius:999px;padding:5px 14px;margin-bottom:14px;
}
h2{font-size:29px;line-height:1.4;color:var(--deep);margin-bottom:12px;font-weight:700;}
h3{font-size:18px;color:var(--deep);margin-bottom:8px;font-weight:700;}
p{color:var(--muted);}
.lead{font-size:17px;color:#33574b;}
.card{
  background:#fff;border-radius:18px;padding:24px;
  box-shadow:var(--card);transition:transform .25s ease,box-shadow .25s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--card-hover);}
.grid{display:grid;gap:22px;}
.g2{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));}
.g3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));}
.g4{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));}
.btn{
  display:inline-block;padding:12px 26px;border-radius:999px;font-weight:700;font-size:15px;
  background:linear-gradient(135deg,#10b981,#34d399);color:#fff;
  box-shadow:0 10px 24px rgba(16,185,129,.32);
}
.btn:hover{color:#fff;transform:translateY(-2px);}
.btn-ghost{
  background:#fff;color:var(--emerald-dark);
  box-shadow:0 6px 18px rgba(16,185,129,.16), 0 0 0 1px var(--line);
}
.btn-ghost:hover{color:var(--deep);}
/* hero */
#hero{padding-top:52px;}
.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;}
h1{font-size:38px;line-height:1.35;color:var(--deep);margin-bottom:16px;font-weight:800;letter-spacing:.5px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;}
.hero-img{border-radius:22px;box-shadow:0 18px 44px rgba(16,185,129,.20),0 0 0 1px var(--line);overflow:hidden;}
/* geo */
#geo-intro .geo-box{
  background:linear-gradient(135deg,#ffffff 0%,#f0fdf8 100%);
  border-radius:22px;padding:32px;box-shadow:var(--card);border-left:6px solid var(--emerald);
}
/* stats */
.stat{text-align:center;padding:26px 18px;}
.stat b{display:block;font-size:32px;color:var(--emerald-dark);font-weight:800;line-height:1.2;}
.stat span{font-size:14px;color:var(--muted);}
/* advantages */
.adv-icon{font-size:26px;margin-bottom:10px;}
/* events */
.event-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.tag{display:inline-block;font-size:12px;font-weight:700;color:#047857;background:#d9fbec;border-radius:999px;padding:3px 12px;}
/* news */
.news-item{padding:22px 24px;}
.news-item h3{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:17px;}
.date{font-size:13px;font-weight:600;color:#8aa8a0;background:#f2fbf8;border-radius:999px;padding:2px 10px;}
.news-item p{margin-top:8px;font-size:15px;}
/* faq */
.faq-item{margin-bottom:16px;padding:22px 24px;}
.faq-item h3{font-size:16.5px;color:var(--deep);display:flex;gap:10px;}
.faq-item h3::before{content:"Q";color:#fff;background:var(--emerald);border-radius:8px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;flex:0 0 auto;}
.faq-item p{margin-top:10px;font-size:15px;}
/* testimonials */
.quote{font-size:15px;}
.quote::before{content:"❝";color:var(--emerald);font-size:24px;line-height:1;display:block;margin-bottom:6px;}
.who{margin-top:12px;font-size:13px;color:#7f9c94;}
/* cta */
#cta .cta-box{
  background:linear-gradient(135deg,#ecfdf5,#d7f9ea 55%,#ffffff);
  border-radius:26px;padding:44px 32px;text-align:center;
  box-shadow:var(--card);
}
#cta .cta-box p{max-width:640px;margin:0 auto 22px;}
/* footer */
footer{
  margin-top:30px;background:linear-gradient(180deg,#ffffff,#ecfdf5);
  border-top:1px solid var(--line);padding:42px 0 26px;
}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;}
.foot-grid h4{font-size:16px;color:var(--deep);margin-bottom:10px;}
.foot-grid p,.foot-grid li{font-size:14px;color:var(--muted);list-style:none;}
.foot-bottom{
  margin-top:28px;padding-top:18px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13.5px;color:#6c8b83;
}
@media (max-width:820px){
  .hero-inner{grid-template-columns:1fr;}
  h1{font-size:29px;}
  h2{font-size:23px;}
  section{padding:46px 0;}
}