*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
body { font-family: system-ui, 'PingFang SC', 'Microsoft YaHei', sans-serif; overflow-x:hidden; background:#fafff9; color:#25413a; }

/* ═══════════════ 核心布局 ═══════════════ */
.container { max-width:1200px; margin:0 auto; padding:0 24px; }
.section { padding:80px 0; position:relative; }
.section:nth-child(even) { background:rgba(232, 249, 240, 0.6); }

/* ═══════════════ 导航 ═══════════════ */
.site-header { position:fixed; top:0; left:0; width:100%; z-index:1000; background:rgba(250,255,249,0.9); backdrop-filter:blur(20px) saturate(1.4); border-bottom:0; box-shadow:0 4px 40px rgba(90, 120, 110, 0.12); }
.header-inner { display:flex; align-items:center; justify-content:space-between; height:72px; max-width:1200px; margin:0 auto; padding:0 32px; }
.logo { display:flex; align-items:center; gap:12px; font-weight:800; font-size:1.45rem; text-decoration:none; color:#25413a; letter-spacing:-0.5px; }
.logo-icon { width:40px; height:40px; border-radius:14px 14px 14px 4px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; background:linear-gradient(135deg, #65d6ce, #ffeaa7); box-shadow:0 4px 16px rgba(101,214,206,0.3); }
.main-nav { display:flex; align-items:center; gap:36px; list-style:none; }
.main-nav a { text-decoration:none; font-size:0.9rem; font-weight:500; color:#4a675e; opacity:0.8; transition:opacity 0.2s, transform 0.2s; letter-spacing:0.02em; }
.main-nav a:hover { opacity:1; transform:translateY(-2px); color:#2d7a6e; }
.nav-cta { padding:10px 24px; border-radius:100px; background:linear-gradient(135deg, #65d6ce, #ffb86c); color:#fff !important; font-weight:700; opacity:1 !important; box-shadow:0 4px 20px rgba(101,214,206,0.35); }
.menu-toggle { display:none; }

/* ═══════════════ Hero ═══════════════ */
.hero { min-height:100vh; display:flex; align-items:center; background-image: radial-gradient(circle at 90% 10%, #d3f5ea 0%, transparent 45%), radial-gradient(circle at 10% 90%, #fdeed4 0%, transparent 40%); position:relative; overflow:hidden; }
.hero::before { content:'「卷」'; position:absolute; right:-2vw; bottom:-4vh; font-size:18rem; font-weight:900; color:transparent; -webkit-text-stroke:2px rgba(101,214,206,0.2); z-index:0; font-family:'STKaiti', 'KaiTi', serif; letter-spacing:0.08em; }
.hero-content { max-width:800px; position:relative; z-index:2; }
.hero-eyebrow { display:inline-block; font-size:0.85rem; font-weight:700; letter-spacing:0.2em; padding:8px 20px; border-radius:100px; background:#ffeaa7; color:#47685d; margin-bottom:24px; text-transform:uppercase; }
.hero h1 { font-size:4.2rem; line-height:1.1; margin-bottom:24px; letter-spacing:-0.02em; }
.hero h1 span { color:#65d6ce; background-filter:drop-shadow(0 4px 8px rgba(101,214,206,0.3)); }
.hero p { font-size:1.15rem; opacity:0.75; max-width:600px; margin-bottom:40px; line-height:1.9; font-weight:300; letter-spacing:0.03em; }
.hero-buttons { display:flex; gap:18px; }
.hero-image { border-radius:16px; overflow:hidden; box-shadow:0 24px 80px rgba(72, 138, 121, 0.2); transform:rotate(2deg); }

/* ═══════════════ 按钮 ═══════════════ */
.btn { display:inline-flex; align-items:center; gap:10px; padding:14px 36px; border-radius:100px; font-weight:700; cursor:pointer; border:none; text-decoration:none; transition:all 0.3s cubic-bezier(0.19, 1, 0.22, 1); letter-spacing:0.04em; }
.btn-primary { background:linear-gradient(135deg, #65d6ce, #2d9c8c); color:#fff; box-shadow:0 8px 32px rgba(101,214,206,0.4); }
.btn-primary:hover { transform:translateY(-3px); box-shadow:0 12px 40px rgba(101,214,206,0.5); }
.btn-outline { background:transparent; border:2px solid #65d6ce; color:#2d7a6e; box-shadow:none; }
.btn-outline:hover { background:#65d6ce; color:#fff; transform:translateY(-3px); }

/* ═══════════════ 标签/标题 ═══════════════ */
.section-label { display:inline-block; font-size:0.75rem; font-weight:700; letter-spacing:0.3em; margin-bottom:16px; color:#65d6ce; text-transform:uppercase; position:relative; padding-left:32px; }
.section-label::before { content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:24px; height:2px; background:#65d6ce; }
.section-title { font-size:2.8rem; margin-bottom:20px; letter-spacing:-0.02em; line-height:1.2; font-weight:800; }
.section-desc { max-width:640px; opacity:0.65; margin-bottom:48px; line-height:1.9; font-weight:300; font-size:1.05rem; }

/* ═══════════════ 卡片网格 ═══════════════ */
.cards-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:32px; }
.category-card { border-radius:20px; padding:36px 32px; border:none; background:#fff; box-shadow:0 2px 30px rgba(96, 150, 128, 0.1); transition:all 0.4s cubic-bezier(0.19, 1, 0.22, 1); position:relative; overflow:hidden; }
.category-card::after { content:''; position:absolute; bottom:0; left:0; width:100%; height:4px; background:linear-gradient(90deg, #65d6ce, #ffeaa7); transform:scaleX(0); transform-origin:left; transition:transform 0.4s ease; }
.category-card:hover { transform:translateY(-8px); box-shadow:0 16px 48px rgba(96, 150, 128, 0.18); }
.category-card:hover::after { transform:scaleX(1); }
.card-icon { width:56px; height:56px; border-radius:18px; display:flex; align-items:center; justify-content:center; margin-bottom:20px; font-size:1.6rem; background:linear-gradient(135deg, #d8f5ed, #fff5d9); }
.card-link { font-weight:700; font-size:0.85rem; color:#2d7a6e; text-decoration:none; display:inline-flex; align-items:center; gap:8px; transition:gap 0.3s; }
.card-link:hover { gap:14px; }
.card-link::after { content:'→'; font-size:1.1rem; }

/* ═══════════════ 特性块 ═══════════════ */
.feature-block { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.feature-image { border-radius:24px; overflow:hidden; box-shadow:0 20px 60px rgba(72, 138, 121, 0.15); transform:skewY(-2deg); }
.feature-image img { width:100%; height:auto; }
.feature-text { padding:24px 0; }
.feature-list { list-style:none; margin-top:24px; font-size:0.98rem; }
.feature-list li { padding:14px 0; display:flex; align-items:center; gap:14px; border-bottom:1px dashed rgba(101,214,206,0.3); }
.feature-list li::before { content:'✦'; font-weight:400; color:#65d6ce; font-size:1.2rem; }

/* ═══════════════ 数据条 ═══════════════ */
.stats-bar { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; text-align:center; }
.stat-item { padding:36px 20px; border-radius:20px; border:none; background:#fff; box-shadow:0 2px 24px rgba(96, 150, 128, 0.08); transition:transform 0.3s; }
.stat-item:hover { transform:translateY(-6px); }
.stat-number { font-size:3rem; font-weight:900; background:linear-gradient(135deg, #65d6ce, #ffb86c); -webkit-background-clip:text; -webkit-text-fill-color:transparent; color:#65d6ce; display:block; }
.stat-label { font-size:0.9rem; opacity:0.6; margin-top:8px; letter-spacing:0.06em; }

/* ═══════════════ 内容墙 ═══════════════ */
.content-wall { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:32px; }
.content-wall-item { border-radius:20px; overflow:hidden; border:none; background:#fff; box-shadow:0 2px 24px rgba(96, 150, 128, 0.08); transition:all 0.4s cubic-bezier(0.19, 1, 0.22, 1); }
.content-wall-item:hover { transform:translateY(-10px) scale(0.98); box-shadow:0 20px 56px rgba(96, 150, 128, 0.18); }
.content-wall-item img { width:100%; height:200px; object-fit:cover; border-radius:20px 20px 0 0; }
.content-wall-body { padding:24px; }
.content-wall-body p { font-size:0.9rem; opacity:0.65; line-height:1.6; }

/* ═══════════════ FAQ ═══════════════ */
.faq-list { max-width:860px; margin:0 auto; }
.faq-item { border:none; border-radius:16px; margin-bottom:12px; overflow:hidden; cursor:pointer; background:#fff; box-shadow:0 2px 16px rgba(96, 150, 128, 0.08); transition:box-shadow 0.3s; }
.faq-item:hover { box-shadow:0 6px 28px rgba(96, 150, 128, 0.14); }
.faq-item .faq-question { padding:24px 28px; font-weight:700; display:flex; justify-content:space-between; align-items:center; font-size:1.05rem; letter-spacing:0.02em; }
.faq-item .faq-question::after { content:'＋'; color:#65d6ce; font-size:1.4rem; font-weight:400; transition:transform 0.3s; }
.faq-item .faq-answer { padding:0 28px 24px; display:none; opacity:0.7; line-height:1.9; font-weight:300; }
.faq-item.open .faq-answer { display:block; }
.faq-item.open .faq-question::after { content:'－'; transform:rotate(180deg); color:#ffb86c; }

/* ═══════════════ CTA ═══════════════ */
.cta-banner { padding:64px 48px; text-align:center; border-radius:32px; background:linear-gradient(135deg, #65d6ce, #2d9c8c); color:#fff; position:relative; overflow:hidden; box-shadow:0 20px 80px rgba(45,156,140,0.4); }
.cta-banner::before { content:'🍃'; position:absolute; top:14px; left:14px; font-size:3.5rem; opacity:0.2; transform:rotate(-20deg); }
.cta-banner::after { content:'📺'; position:absolute; bottom:10px; right:20px; font-size:4rem; opacity:0.2; transform:rotate(15deg); }
.cta-banner h2 { color:#fff; font-size:2.4rem; letter-spacing:-0.02em; margin-bottom:12px; }
.cta-banner .btn-primary { background:#fff; color:#2d7a6e; box-shadow:0 8px 32px rgba(255,255,255,0.3); }
.cta-banner .btn-primary:hover { transform:scale(1.05); }

/* ═══════════════ 页脚 ═══════════════ */
.site-footer { padding:72px 0 28px; background:#e8f9f0; color:#4a675e; border-top:3px solid #d3f5ea; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; }
.footer-brand { padding-right:40px; }
.footer-col { }
.footer-col h4 { font-weight:700; margin-bottom:18px; color:#25413a; font-size:0.95rem; }
.footer-col a { display:block; padding:6px 0; color:#4a675e; text-decoration:none; opacity:0.7; font-size:0.9rem; transition:opacity 0.3s; }
.footer-col a:hover { opacity:1; color:#2d7a6e; }
.footer-bottom { border-top:1px solid rgba(45,122,110,0.1); margin-top:48px; padding-top:24px; text-align:center; font-size:0.85rem; opacity:0.8; }
.footer-bottom small { display:block; margin-top:8px; color:rgba(74,103,94,0.6); }

/* ═══════════════ 工具类 ═══════════════ */
.text-accent { color:#65d6ce; }
.text-center { text-align:center; }
.seo-description { max-width:640px; margin:0 auto 56px; opacity:0.7; line-height:1.9; font-weight:300; }
.mt-0 { margin-top:0; }
.mb-0 { margin-bottom:0; }

/* ═══════════════ 流体水墨装饰 ═══════════════ */
.section-home-first { background-image: radial-gradient(circle at 20% 20%, #d6f5e9 0%, transparent 35%), radial-gradient(circle at 90% 70%, #ffeaa7 0%, transparent 40%); }

/* 分页/标签 */
.pill-tag { display:inline-block; padding:4px 12px; background:rgba(101,214,206,0.15); border-radius:100px; font-size:0.75rem; font-weight:600; color:#2d7a6e; }

/* 引用模块 */
.quote-block { border-left:4px solid #65d6ce; padding:20px 28px; background:rgba(101,214,206,0.08); border-radius:0 16px 16px 0; font-style:italic; font-size:1.1rem; line-height:1.8; }

/* ═══════════════ 响应式 ═══════════════ */
@media (max-width: 768px) {
  .hero { padding-top:120px; }
  .hero h1 { font-size:3rem; }
  .feature-block { grid-template-columns:1fr; gap:32px; }
  .stats-bar { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .main-nav { display:none; }
  .menu-toggle { display:flex; }
  .main-nav.open { display:flex; flex-direction:column; position:absolute; top:72px; left:0; width:100%; background:#fafff9; padding:24px 32px; gap:20px; border-radius:0 0 24px 24px; box-shadow:0 16px 48px rgba(90,120,110,0.1); }
  .cta-banner { margin:0 16px; padding:48px 24px; }
}
@media (max-width: 480px) {
  .cards-grid, .content-wall, .stats-bar { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .hero-buttons { flex-direction:column; }
  .hero h1 { font-size:2.4rem; }
  .section-title { font-size:2rem; }
  .cta-banner h2 { font-size:1.6rem; }
}