:root{
      --bg:#f7fbf4;
      --bg2:#edf9ea;
      --card:#ffffff;
      --card2:#f4fff0;
      --text:#1c2a1f;
      --muted:#5a6a5f;
      --line:#d9ebd4;
      --green:#21b35b;
      --green2:#15a24f;
      --accent:#7be34b;
      --shadow:0 14px 40px rgba(33,179,91,.12);
      --shadow2:0 10px 24px rgba(18, 92, 42, .10);
      --radius:20px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 15% 10%, rgba(123,227,75,.20), transparent 22%),
        radial-gradient(circle at 85% 0%, rgba(33,179,91,.12), transparent 18%),
        linear-gradient(180deg, #fbfff8 0%, var(--bg) 100%);
      line-height:1.65;
      overflow-x:hidden;
    }
    a{color:var(--green2); text-decoration:none}
    a:hover{opacity:.9}
    .container{max-width:var(--container); margin:0 auto; padding:0 20px}
    .site-header{
      position:sticky; top:0; z-index:50;
      backdrop-filter:saturate(160%) blur(12px);
      background:rgba(247,251,244,.88);
      border-bottom:1px solid rgba(217,235,212,.8);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:18px;
      min-height:76px;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand img{width:40px; height:40px; object-fit:contain; flex:0 0 auto}
    .brand-text{display:flex; flex-direction:column; min-width:0}
    .brand-text strong{font-size:1.05rem; letter-spacing:.4px}
    .brand-text span{font-size:.82rem; color:var(--muted)}
    .nav-links{
      display:flex; align-items:center; gap:16px; flex-wrap:wrap; justify-content:flex-end;
    }
    .nav-links a{color:var(--text); font-size:.95rem; padding:8px 10px; border-radius:999px; transition:.2s ease}
    .nav-links a:hover{background:#e8f8e4; color:var(--green2)}
    .nav-cta{display:flex; align-items:center; gap:10px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border:0; border-radius:999px; padding:12px 18px; font-weight:700;
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
      cursor:pointer; white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px); box-shadow:var(--shadow2)}
    .btn-primary{background:linear-gradient(135deg, var(--green), var(--green2)); color:#fff}
    .btn-ghost{background:#fff; color:var(--text); border:1px solid var(--line)}
    .menu-toggle{display:none; background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px 12px; color:var(--text)}
    .hero{
      padding:34px 0 22px;
    }
    .hero-grid{
      display:grid; grid-template-columns:1.25fr .75fr; gap:22px; align-items:stretch;
    }
    .hero-main{
      background:
        linear-gradient(135deg, rgba(255,255,255,.94), rgba(239,255,235,.92)),
        radial-gradient(circle at 100% 0%, rgba(123,227,75,.16), transparent 20%);
      border:1px solid rgba(217,235,212,.9);
      border-radius:28px;
      box-shadow:var(--shadow);
      padding:34px;
      position:relative;
      overflow:hidden;
    }
    .hero-main:before,.hero-main:after{
      content:""; position:absolute; border-radius:999px; background:rgba(33,179,91,.08); filter:blur(2px);
      animation:float 10s ease-in-out infinite;
    }
    .hero-main:before{width:140px; height:140px; right:-30px; top:-20px}
    .hero-main:after{width:90px; height:90px; right:120px; bottom:-24px; animation-delay:-3s}
    @keyframes float{50%{transform:translateY(10px) translateX(-8px)}}
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px;
      background:#eaf9e6; color:var(--green2); font-weight:700; font-size:.9rem;
    }
    h1{
      margin:16px 0 12px; font-size:clamp(2rem, 4.6vw, 3.5rem); line-height:1.08; letter-spacing:-.02em;
    }
    .hero p{margin:0; color:var(--muted); font-size:1.02rem; max-width:62ch}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px}
    .hero-points{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:24px}
    .mini-stat{
      background:rgba(255,255,255,.8); border:1px solid rgba(217,235,212,.9); border-radius:18px; padding:16px;
    }
    .mini-stat strong{display:block; font-size:1.18rem; color:var(--green2)}
    .mini-stat span{color:var(--muted); font-size:.92rem}
    .hero-side{
      display:grid; gap:16px;
    }
    .hero-card{
      background:rgba(255,255,255,.94); border:1px solid rgba(217,235,212,.9);
      border-radius:24px; box-shadow:var(--shadow2); padding:22px;
    }
    .hero-card h2,.section-title h2{margin:0 0 8px; font-size:1.4rem}
    .hero-card p{margin:0; color:var(--muted)}
    .badge-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
    .badge{padding:8px 12px; border-radius:999px; background:#effbea; color:#2a6d3d; font-size:.88rem; border:1px solid #dcefd5}
    .section{padding:18px 0 6px}
    .section-title{display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px}
    .section-title p{margin:0; color:var(--muted)}
    .grid-4{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
    .grid-3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
    .card{
      background:var(--card); border:1px solid rgba(217,235,212,.92); border-radius:24px;
      padding:22px; box-shadow:0 10px 24px rgba(13,79,34,.06);
      transition:transform .22s ease, box-shadow .22s ease;
    }
    .card:hover{transform:translateY(-3px); box-shadow:var(--shadow)}
    .card h3{margin:0 0 8px; font-size:1.06rem}
    .card p{margin:0; color:var(--muted)}
    .stat{
      font-size:2rem; font-weight:800; color:var(--green2); line-height:1.1;
    }
    .icon{
      width:46px; height:46px; border-radius:14px; display:grid; place-items:center; margin-bottom:14px;
      background:linear-gradient(135deg, #edfdea, #dff7d5); color:var(--green2); font-weight:800;
    }
    .split{
      display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:start;
    }
    .list{
      margin:14px 0 0; padding:0; list-style:none; display:grid; gap:12px;
    }
    .list li{
      padding-left:18px; position:relative; color:var(--text)
    }
    .list li:before{content:""; width:8px; height:8px; border-radius:50%; background:var(--green); position:absolute; left:0; top:.6em}
    .flow{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
    .step{
      position:relative; padding:20px; border-radius:22px; border:1px solid rgba(217,235,212,.92); background:linear-gradient(180deg, #fff, #f8fff5);
    }
    .step b{display:inline-flex; width:32px; height:32px; align-items:center; justify-content:center; border-radius:10px; background:#e7f9e2; color:var(--green2); margin-bottom:12px}
    .table-wrap{overflow:auto; border-radius:22px; border:1px solid rgba(217,235,212,.92); background:#fff}
    table{width:100%; border-collapse:collapse; min-width:760px}
    th,td{padding:16px 14px; text-align:left; border-bottom:1px solid #edf3ea; vertical-align:top}
    th{background:#effbea; color:#20412b}
    .rating{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
    .stars{color:#f4b400; font-size:1.1rem; letter-spacing:1px}
    details{
      background:#fff; border:1px solid rgba(217,235,212,.92); border-radius:18px; padding:0 18px; box-shadow:0 8px 18px rgba(13,79,34,.05)
    }
    details+details{margin-top:12px}
    summary{
      list-style:none; cursor:pointer; padding:16px 0; font-weight:700;
    }
    summary::-webkit-details-marker{display:none}
    details p{margin:0 0 16px; color:var(--muted)}
    .reviews{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
    .review .meta{display:flex; align-items:center; gap:12px; margin-bottom:12px}
    .avatar{
      width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg, #dff9d7, #bfeeb0); color:#2a6d3d;
      display:grid; place-items:center; font-weight:800; flex:0 0 auto;
    }
    .review small{color:var(--muted)}
    .article-list{display:grid; gap:12px}
    .article-item{
      display:flex; justify-content:space-between; gap:14px; padding:16px 18px; border-radius:18px;
      background:#fff; border:1px solid rgba(217,235,212,.92);
    }
    .article-item span{color:var(--muted)}
    .tags{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:10px 13px; border-radius:999px; background:#fff; border:1px solid rgba(217,235,212,.92); color:#2d4c35}
    .contact-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px}
    form{
      display:grid; gap:12px; background:#fff; border:1px solid rgba(217,235,212,.92); border-radius:24px; padding:22px;
    }
    .field{display:grid; gap:8px}
    label{font-weight:700; font-size:.95rem}
    input,select,textarea{
      width:100%; border:1px solid #dbe8d5; border-radius:14px; padding:13px 14px; font:inherit; color:var(--text); background:#fbfffa;
      outline:none; transition:border-color .2s ease, box-shadow .2s ease;
    }
    input:focus,select:focus,textarea:focus{border-color:var(--green); box-shadow:0 0 0 4px rgba(33,179,91,.12)}
    textarea{min-height:120px; resize:vertical}
    .contact-card{
      background:linear-gradient(180deg, #ffffff, #f3fff0); border:1px solid rgba(217,235,212,.92); border-radius:24px; padding:22px;
    }
    .qrcode{
      width:180px; max-width:100%; border-radius:18px; overflow:hidden; border:1px solid rgba(217,235,212,.92); background:#fff;
    }
    .qrcode img{display:block; width:100%; height:auto}
    .footer{
      margin-top:18px; padding:24px 0 28px; border-top:1px solid rgba(217,235,212,.9);
      background:linear-gradient(180deg, rgba(239,251,234,.6), rgba(247,251,244,1));
      color:var(--text);
    }
    .footer-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:start}
    .footer-links{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px}
    .footer a{color:#245536}
    .footer small{color:#5a6a5f}
    .float-tools{
      position:fixed; right:16px; bottom:16px; z-index:60; display:grid; gap:10px;
    }
    .float-tools a,.float-tools button{
      width:48px; height:48px; border-radius:16px; border:1px solid rgba(217,235,212,.92);
      background:#fff; box-shadow:var(--shadow2); display:grid; place-items:center; color:var(--green2); cursor:pointer;
    }
    .floating-contact{
      position:fixed; left:16px; bottom:16px; z-index:60;
      background:#fff; border:1px solid rgba(217,235,212,.92); border-radius:18px; padding:12px 14px;
      box-shadow:var(--shadow2);
    }
    .floating-contact strong{display:block; font-size:.95rem}
    .floating-contact span{font-size:.86rem; color:var(--muted)}
    .reveal{opacity:0; transform:translateY(18px); transition:opacity .55s ease, transform .55s ease}
    .reveal.show{opacity:1; transform:none}
    @media (max-width: 1080px){
      .hero-grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}
      .grid-4,.grid-3,.flow,.reviews{grid-template-columns:repeat(2,minmax(0,1fr))}
      .hero-points{grid-template-columns:1fr}
    }
    @media (max-width: 760px){
      .nav{min-height:68px}
      .menu-toggle{display:inline-flex}
      .nav-links{
        display:none; position:absolute; left:20px; right:20px; top:76px; background:#fff; padding:12px;
        border:1px solid rgba(217,235,212,.95); border-radius:18px; box-shadow:var(--shadow);
      }
      .nav-links.open{display:flex; flex-direction:column; align-items:flex-start}
      .nav-cta .btn-ghost{display:none}
      .hero-main{padding:24px}
      .grid-4,.grid-3,.flow,.reviews{grid-template-columns:1fr}
      .section-title{flex-direction:column; align-items:flex-start}
      .article-item{flex-direction:column}
      .floating-contact{max-width:220px}
    }