@charset "utf-8";
/* ===== Reset ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,sans-serif;background:#f0fdf4;color:#1e293b;line-height:1.7;antialiased;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul,ol{list-style:none}
button,input,textarea{font:inherit}

/* ===== 通用工具类 ===== */
.sticky{position:sticky}
.top-0{top:0}
.z-50{z-index:50}
.relative{position:relative}
.absolute{position:absolute}
.hidden{display:none}
.inline-block{display:inline-block}
.overflow-hidden{overflow:hidden}
.overflow-x-auto{overflow-x:auto}
.whitespace-nowrap{white-space:nowrap}
.backdrop-blur{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mx-auto{margin-left:auto;margin-right:auto}
.max-w-6xl{max-width:72rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mt-3{margin-top:.75rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.-top-6{top:-1.5rem}
.-left-6{left:-1.5rem}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.gap-10{gap:2.5rem}
.flex{display:flex}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.grid{display:grid}
.space-y-2>*+*{margin-top:.5rem}
.text-xs{font-size:.75rem;line-height:1.2rem}
.text-sm{font-size:.875rem;line-height:1.4rem}
.text-lg{font-size:1.125rem;line-height:1.8rem}
.text-2xl{font-size:1.5rem;line-height:2.2rem}
.text-3xl{font-size:1.875rem;line-height:2.4rem}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.leading-snug{line-height:1.4}
.leading-relaxed{line-height:1.75}
.text-center{text-align:center}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.w-8{width:2rem}.h-8{height:2rem}
.w-9{width:2.25rem}.h-9{height:2.25rem}
.w-40{width:10rem}.h-40{height:10rem}
.transition{transition:all .2s ease}
.shadow{box-shadow:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06)}
.shadow-md{box-shadow:0 4px 6px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.05)}
.shadow-lg{box-shadow:0 10px 15px rgba(0,0,0,.08),0 4px 6px rgba(0,0,0,.05)}
.hover\:shadow-md:hover{box-shadow:0 6px 12px rgba(0,0,0,.1)}
.blur-3xl{filter:blur(64px)}

/* ===== 颜色 ===== */
.bg-white{background:#fff}
.bg-emerald-50{background:#ecfdf5}
.bg-emerald-100{background:#d1fae5}
.bg-emerald-200{background:#a7f3d0}
.bg-emerald-500{background:#10b981}
.bg-emerald-900{background:#064e3b}
.text-white{color:#fff}
.text-slate-800{color:#1e293b}
.text-slate-900{color:#0f172a}
.text-slate-500{color:#64748b}
.text-slate-600{color:#475569}
.text-emerald-100{color:#d1fae5}
.text-emerald-600{color:#059669}
.text-emerald-700{color:#047857}
.border-emerald-100{border-color:#d1fae5}
.border-emerald-200{border-color:#a7f3d0}
.border-emerald-800{border-color:#065f46}
.border{border-width:1px;border-style:solid}
.border-t{border-top-width:1px;border-top-style:solid}
.hover\:text-white:hover{color:#fff}
.hover\:text-emerald-600:hover{color:#059669}
.hover\:bg-emerald-600:hover{background:#059669}
.opacity-75{opacity:.75}
.opacity-80{opacity:.8}
.opacity-90{opacity:.9}

/* ===== 页头导航 ===== */
header.sticky{box-shadow:0 1px 2px rgba(0,0,0,.05)}
header nav a{transition:color .2s ease}
header>nav:first-child ul li a{padding:.25rem .125rem}
header .bg-emerald-500.rounded-full{display:inline-block}
header .bg-emerald-500.rounded-full:hover{transform:translateY(-1px)}

/* ===== 主栏 Hero / 板块通用 ===== */
main section{position:relative}
main .py-16{padding-top:4rem;padding-bottom:4rem}
main .grid.md\:grid-cols-2{display:grid;gap:2.5rem;grid-template-columns:1fr}
main .bg-emerald-100.px-3.py-1{display:inline-block;border-radius:.375rem;font-weight:600;letter-spacing:.02em}
main h1,main h2{color:#0f172a}
main .text-slate-600{margin-top:1.5rem}
main a.px-6.py-3{display:inline-block;border-radius:.75rem;text-align:center;min-width:9rem}
main a.px-6.py-3:hover{transform:translateY(-2px)}
main .text-emerald-600{font-weight:700}
main .bg-emerald-200.blur-3xl{pointer-events:none;opacity:.5}
main .text-2xl{margin-bottom:.5rem}
main .gap-8>p,main .gap-8>div>p{margin-top:.5rem}
main .text-slate-500{font-size:.9rem}

/* ===== 卡片 ===== */
main .shadow,main .shadow-md,main .shadow-lg{background:#fff}
main .border{background:#fff;border-radius:.75rem}

/* ===== 页脚 ===== */
footer{word-break:break-word;overflow-wrap:anywhere}
footer a{display:inline-block;padding:2px 0;cursor:pointer;transition:color .2s ease,transform .2s ease}
footer a:hover{transform:translateX(2px)}
footer .space-y-2 li{line-height:1.6}
footer .grid>div>p:first-child span{flex:none}
footer .border-t p{letter-spacing:.02em}

/* ===== 移动端 ===== */
@media (max-width:767px){
  .md\:hidden{display:block}
  .hidden.md\:flex{display:none}
  main .grid.md\:grid-cols-2{grid-template-columns:1fr}
  main .text-3xl{font-size:1.75rem}
  header>nav:first-child .bg-emerald-500.rounded-full{padding:.5rem 1rem}
  footer .grid{grid-template-columns:1fr}
}
@media (min-width:768px){
  .md\:hidden{display:none}
  .hidden.md\:flex{display:flex}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:py-24{padding-top:6rem;padding-bottom:6rem}
  .md\:text-4xl{font-size:2.25rem;line-height:2.75rem}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
footer .grid{display:grid;grid-template-columns:1fr;gap:2rem}
@media (min-width:768px){footer .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}